我不明白這些用法:msleep
和msleep_interruptible
...我知道一個可中斷,其他不可中斷,但找不到某些用法,我實際上可以看到。我試着用函數調用線程給msleep並打印出「你好!」然後msleep(msleep_interruptible),但看不到任何區別。任何人都可以幫助我,可以用例子嗎?msleep(毫秒)與msleep_interruptible(毫秒)
1
A
回答
4
不同之處在於發生信號(例如SIGINT)時發生的情況,併爲該信號設置了信號處理程序。
msleep
回到休眠msleep_interruptible
返回給調用者(與代表剩餘的睡眠時間爲非零值)。
可中斷睡眠的一個例子:
$ perl -Mthreads -E'
my $stime=time;
async { sleep(3); kill INT => $$; }->detach();
$SIG{INT} = sub { warn "Got INT signal after ".(time-$stime)."\n"; };
sleep(5);
say time-$stime;
'
Got INT signal after 3
3
它睡3秒而不是5,因爲它被認爲是由一個處理信號中斷。另一個版本將打印以下:
Got INT signal after 3
5
換句話說,信號處理程序被調用無論哪種方式,但即使信號只有一個版本不返回
相關問題
- 1. 毫秒到秒?
- 2. 格式時間從秒到毫秒:秒:毫秒:微秒
- 3. Android從GMT毫秒獲得UTC毫秒
- 4. 將毫秒轉換爲毫秒
- 5. NSDateFormatter毫秒bug
- 6. PHP毫秒isuse
- 7. MPMusicPlayerController currentPlaybackTime - 毫秒
- 8. 熊貓 - 毫秒
- 9. 毫秒的MySQL
- 10. 毫秒到LocalDateTime
- 11. JFreeChart xAxis毫秒
- 12. 顯示毫秒
- 13. Android毫秒
- 14. X毫秒
- 15. Nano和毫秒
- 16. 毫秒PHP
- 17. wxDateTime ParseFormat()毫秒
- 18. 捕捉毫秒
- 19. 以毫秒
- 20. 毫微秒到毫微秒的轉換毫秒數<999999在Java中
- 21. 從毫秒到小時,分鐘,秒和毫秒
- 22. 如何在Phoenix Logger中僅記錄秒數,毫秒毫秒?
- 23. 倒計時秒數:毫秒
- 24. 時間以秒或毫秒
- 25. 毫秒級的jQuery秒錶
- 26. 以秒,毫秒顯示datediff
- 27. 的netcat與毫秒間隔
- 28. C#SQL插入與毫秒
- 29. 將時間轉換爲秒+毫秒秒
- 30. CountDownTimer格式毫秒
這是否幫助? http://help.lockergnome.com/linux/msleep_interruptible-msleep--ftopict369242.html – krlmlr
現在我並不關心加載平均值(他們正在討論這個線程),但我無法理解這些API背後的想法,何時使用? (我想爲什麼,你指的是,我認爲有幫助,稍後當我想使用!) –