线程的一个很基础的问题,大家帮忙 在看书上一个例子,他在主线程中初始化套接字,然后listen,然后创建了一个子线程,在这个线程中等待用户的accept我在想,如果用户的连接到来的时候,恰好是主线程在运行,那这个程序会不会有问题? 谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 先socket()再accept()就没事 不然accept会失败 不管是否在一个线程上执行 如果主线程在运行,但很快会切换到子线程。子线程会在accept()等待返回。而且一般要测试accept返回值是否有效。while(true){ s = accept(); if(s < 0) { .... } else ...} 不明白,这个子线程没有被挂起啊,一直在运行中,里面有个for循环,一直等待客户端的连接,我想问的是当客户端连接到来的时候,却是主线程在运行,这时会发生什么情况谢谢你 操作系统就要为每个线程安排一定的C P U 时间。它通过以一种循环方式为线程提供时间片(称为量程),造成一种假象,仿佛所有线程都是同时运行的一样。当到子线程时间片的时候就运行子线程,将主线程挂起,这些操作因该由操作系统完成的。 史上最强的绕口令 请问怎样调出工作区中的资源页面? 哪个函数可以得到注册文件的图标句柄 求b-spline或其它三次样条插值代码? 优化大师的界面如何实现(在线等待)先谢谢 <<多文档打开错误,请教!>> 怎样缩短猫的登陆时间? 木马制造者的最爱 《怎样将自己的DLL加载到Explorer.exe》 有源码的呦 如何实现类似于计划任务的程序(再问一次)? 为什么会错呢?高手们(最好是真正的高手来回答,不要为了分而滥竽充数!!!) 如何卸载驱动? 做为新员工,我感到压力很大
而且一般要测试accept返回值是否有效。
while(true)
{
s = accept();
if(s < 0)
{
....
}
else
...
}
当到子线程时间片的时候就运行子线程,将主线程挂起,这些操作因该由操作系统完成的。