avatar
b*i
1
我在调试一个Unix程序, 是xKernel
一个Server, 一个Client都运行了,
然后Client 向Server发包,
Server的底层收到包后, 向Client发Ack, 然后向上层Deliver.
Server的上层收到包后,生成一个线成ServerConsumer
我在ServerConsumer里,用scanf读如一个数.
在这个时候,Client继续向Server发包.但是,我看不出到Server有任何反应.
难道Scanf的使用使主进程Block了?
应该怎样在读取键盘输入的同时让主进程和底层的东西继续执行?
多谢
avatar
w*n
2
Every thread has its independent execution.
To read a scanf from the console should not block the underlying
execution as you described here.
Try to print some info on your lower layer program once getting a
client request. then, debug the lower layer server program part.

【在 b***i 的大作中提到】
: 我在调试一个Unix程序, 是xKernel
: 一个Server, 一个Client都运行了,
: 然后Client 向Server发包,
: Server的底层收到包后, 向Client发Ack, 然后向上层Deliver.
: Server的上层收到包后,生成一个线成ServerConsumer
: 我在ServerConsumer里,用scanf读如一个数.
: 在这个时候,Client继续向Server发包.但是,我看不出到Server有任何反应.
: 难道Scanf的使用使主进程Block了?
: 应该怎样在读取键盘输入的同时让主进程和底层的东西继续执行?
: 多谢

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。