→ tinlans:會實驗出 1. 的結果通常是程式壽命遠低於 time slice。 07/28 01:28
→ tinlans:因為實務上的 time slice 比想像中的大很多。 07/28 01:28
→ tinlans:2. 的話大概只能說對七成,剩下三成現階段不解釋也沒差。 07/28 01:29
→ hn12303158:請問timer slice大概有多長呢? 會超過5分鐘之類的嗎XD 07/28 01:30
→ hn12303158:請問tin大可以稍微點醒我第二點剩下的3成觀念為何嗎? 07/28 01:31
→ hn12303158:我真的很想知道 07/28 01:31
→ tinlans:單位至少是 ms,通常會根據 process 的 nice 值變化。 07/28 01:39
→ tinlans:目前看過的 5 到 100ms 都有,但是很多人測試的程式根本 07/28 01:40
→ tinlans:幾十 us 就跑完了,根本等不到它切換。 07/28 01:41
→ tinlans:對現在的 CPU 來說,ms 其實是很大的一個時間單位。 07/28 01:42
→ tinlans:2. 的剩下三成主要是很多事情未必真的是 kernel 在處理。 07/28 01:43
→ tinlans:但是同樣都是在背後有東西在運作,對你程式撰寫上不影響。 07/28 01:44
→ tinlans:所以現在先忽略沒差,不然實在講不完。 07/28 01:44
→ hn12303158:痾..但是我的程式其中2個thread都各自是個無窮迴圈 07/28 01:44
→ hn12303158:一但其中一個進入迴圈, 我就從來沒看過另外一個迴圈 07/28 01:45
→ hn12303158:印出的字樣了@@" 07/28 01:46
→ james732:像我這樣的程式碼 確實可以看到 111111222222 交互印出 07/28 01:53
→ tinlans:100% 是程式寫錯,可以給大家看一下你怎麼測的。 07/28 01:58
推 littleshan:用印出東西來測,要注意IO buffer的問題 07/28 15:02