当前位置: 技术问答>linux和unix
多线程为何比单线程慢许多?
来源: 互联网 发布时间:2015-09-16
本文导语: 用信号量实现四个线程完成一工作,比单线程慢上有万倍。不知是何原因?请高手指教。谢谢! | 我觉得可能是你互斥量的使用不当,使其他线程申请资源的时候经常处于阻塞。 | ...
用信号量实现四个线程完成一工作,比单线程慢上有万倍。不知是何原因?请高手指教。谢谢!
|
我觉得可能是你互斥量的使用不当,使其他线程申请资源的时候经常处于阻塞。
|
你在create线程之前加上set_concurrency(nthreads)试试
|
pthread_mutex_lock
里面的代码不能有等待再处理的代码,只是关键的处理线程间共享的全局变量的时候的代码才放到里面,我做的多线程程序比单线程快多了
里面的代码不能有等待再处理的代码,只是关键的处理线程间共享的全局变量的时候的代码才放到里面,我做的多线程程序比单线程快多了
|
是不是使用了进程同步啊?
如果进程同步没做好,就很糟糕,到不如单线程快呢。
如果进程同步没做好,就很糟糕,到不如单线程快呢。
|
设定了线程并发性了没有?
|
你这个应该不叫信号量吧,应该叫互斥锁吧?
|
万倍?什么工作?如何实现的?
|
你可以统计一下没步的时间,看看到底慢在哪儿.
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。