zhouyanghere commented on issue #2000:
URL: 
https://github.com/apache/incubator-brpc/issues/2000#issuecomment-1326116094

   > 
   
   它处理过程是这样的。Pthread 
A上运行bthreadA(epoll_wait),然后处理epoll事件,即ProcessEvent过程,其为bthread 
B,PthreadA会去执行bthread B,而将bthread 
A丢给队列,由其他pthread去继续执行。write和read是在ProcessEvent内部执行的,还在PthreadA上执行。
   
   之前怀疑pthread 在bthread调度过程中切换了cpu,线程绑核后并没有效果。
   
   之所以怀疑jump stack,因为jump stack各系统实现的汇编代码不同,而mac 
pro上ProcessEvent是否基于bthread没有任何区别。当然也有可能是CPU架构或操作系统不同的原因。
   现在就是不清楚ProcessEvent走bthread影响系统调用的真实原因具体在哪里,从而无法进行优化。


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to