linux c语言 线程sleep有关测试总结

1.线程中不使用sleep,不会造成线程切换问题。
2.线程中使用sleep,会使cpu的占有率降低。让其他线程或进程,运行得更有效。
3.使用sleep(0)和不使用sleep,效果差别不大,都不会使cpu睡眠。usleep(0)和usleep(1)效果相同,都会使cpu睡眠。
4.信号量和互斥锁阻塞时候都不会占用cpu。
5.nanosleep没有令cpu睡眠时间比usleep(1)更短。
6.如果需要cpu快速运行,又能获得睡眠,可以使用循环一定次数后,用usleep(1)睡眠一次。

参考:

信号量和互斥锁阻塞时,cpu占用率测试_工程师-CSDN博客

Linux c语言sleep多线程while循环实验_工程师-CSDN博客

linux c语言sleep不占用cpu的验证_工程师-CSDN博客

linux c语言sleep的时间实验_工程师-CSDN博客

linux C 多线程_工程师-CSDN博客

互斥锁机制,互斥锁与读写锁区别_CET4_的博客-CSDN博客_读写锁和互斥锁的区别

Linux内核锁机制——信号量、互斥锁、自旋锁、原子操作详解 - 百度文库 (baidu.com)

posix多线程有感--自旋锁-taohorse-ChinaUnix博客

pthread_spin自旋锁_gdut17的博客-CSDN博客_pthread_spin_init

linux多线程:自旋锁_老王不让用的博客-CSDN博客_pthread_spin_init