channel如何唤醒receiver?
原文中文,约200字,阅读约需1分钟。
📝
内容提要
之前以为Rust的channel中,sender写入数据后会通过pthread_cond_signal()来唤醒receiver。但通过示例程序和strace执行发现,receiver被唤醒时没有发现系统调用。想知道是通过什么方法唤醒的,多线程间的唤醒是否可以不经过系统调用。
🎯
关键要点
-
作者原以为Rust的channel中,sender通过pthread_cond_signal()唤醒receiver。
-
通过示例程序和strace执行,发现receiver被唤醒时没有系统调用。
-
作者对唤醒机制产生疑问,想知道是否可以不经过系统调用进行多线程间的唤醒。
🏷️