Skip to content

jiangliu123456/chp_pthread_pool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

chp_pthread_pool

C High performance pthread_pool:基于c语言高性能线程池,本项目目的在于探索如何实现简单且高效的线程池,仅学习用途。 如果你有其他好的想法,欢迎交流,可以在old目录加入你的代码,并测试。

编译

平台:linux

mkdir out

make

说明

old文件夹里面是老版本,使用常规方式实现 根目录下的版本是优化后的

  • 1 全部采用无锁编程
  • 2 线程休眠与唤醒用eventfd实现(线程通知)
  • 3 每个线程自己收集运行状态,自适应高性能工作模式和常规工作模式

如何使用

参考 test/test.c

新旧版本对比

  • test/test.c 在高性能测试中,新版本比旧版本性能提升 50%
  • test/test2.c 在常规测试中 ,新版本比旧版本性能提升 50-75%
  • 新版本代码中 water_line的设置跟cpu能力有关,可能需要自行调整

About

基于c语言高性能线程池

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published