当前位置: 技术问答>linux和unix
关于Linux的线程和Windows的线程比较
来源: 互联网 发布时间:2016-01-03
本文导语: 前段时间,在该版有位兄弟发了一篇贴子:http://community.csdn.net/Expert/TopicView3.asp?id=5185751 在该贴子中,楼主在设计网络服务端程序时“为了稳定,不考虑多线程。” 我“对于楼主这句话表示怀疑 如果设计得当,线程...
前段时间,在该版有位兄弟发了一篇贴子:http://community.csdn.net/Expert/TopicView3.asp?id=5185751
在该贴子中,楼主在设计网络服务端程序时“为了稳定,不考虑多线程。”
我“对于楼主这句话表示怀疑
如果设计得当,线程一样很稳定,而且性能绝对比多进程要好得多”
楼主随后找出一篇文章来证明他的观点,说linux的线程如何低效。
需要指出的是,楼主给出的那篇文章抱的是老黄历,是linux2.4及以前版本的内核对线程的支持效率不高。
linux的技术是在不断的发展中的,在2.6的内核中对thread的支持也有相当大的改进,最新的线程实现NPTL效率相当高,不信的可以做个验证。
windows xp中执行如下代码,执行结果为:672毫秒左右
我的是windows xp,release版,优化为最快速度
#include
#include
DWORD WINAPI ThreadFunc( LPVOID *param )
{
return 0;
}
int main()
{
HANDLE hThread;
int i;
DWORD dwBegin, dwEnd;
dwBegin = GetTickCount();
for ( i = 0; i
在该贴子中,楼主在设计网络服务端程序时“为了稳定,不考虑多线程。”
我“对于楼主这句话表示怀疑
如果设计得当,线程一样很稳定,而且性能绝对比多进程要好得多”
楼主随后找出一篇文章来证明他的观点,说linux的线程如何低效。
需要指出的是,楼主给出的那篇文章抱的是老黄历,是linux2.4及以前版本的内核对线程的支持效率不高。
linux的技术是在不断的发展中的,在2.6的内核中对thread的支持也有相当大的改进,最新的线程实现NPTL效率相当高,不信的可以做个验证。
windows xp中执行如下代码,执行结果为:672毫秒左右
我的是windows xp,release版,优化为最快速度
#include
#include
DWORD WINAPI ThreadFunc( LPVOID *param )
{
return 0;
}
int main()
{
HANDLE hThread;
int i;
DWORD dwBegin, dwEnd;
dwBegin = GetTickCount();
for ( i = 0; i