MrGuin commented on PR #1751: URL: https://github.com/apache/brpc/pull/1751#issuecomment-1853376676
> nosched参数是不是可以去掉了,如果nosignal是true,就不要调用exchange,而是调用ready_to_run 另外,我觉得exchange里面的nosignal=true会有问题,因为当前协程切出去了,再次回来需要一个flush,这个flush不知道谁去执行。这和其它地方的nosignal不一样,其它地方都是本协程唤醒其它协程,最后执行一次flush no_signal 为 true,不调用 exchange,ready_to_run* 会传递 no_signal 参数,被唤醒的 bthread 不就无法被及时调度了吗? 我们有同样的场景,不希望当前执行 butex_wake 的 bthread 被 exchange 转去执行被唤醒的 bthread,所以使用了这个 feature,现在观察到被唤醒的 bthread 从唤醒到被调度执行会有上百毫秒的延迟,因为现在的实现 no_signal 传递给了 ready_to_run*,导致无法被及时调度处理。 -- 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: dev-unsubscr...@brpc.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For additional commands, e-mail: dev-h...@brpc.apache.org