看板 SFFamily 關於我們 聯絡資訊
※ [本文轉錄自 java 看板] 發信人: DMaster.bbs@bbs.cis.nctu.edu.tw (KUSO King), 看板: java 標 題: Re: thread的問題 發信站: 交大資科_BBS (Sat Dec 7 21:09:02 2002) 轉信站: Ptt!news.ntu!freebsd.ntu!news.cis.nctu!cis_nctu ==> 在 Alias.bbs@bbs.im.ncnu.edu.tw ( ) 的文章中提到: > 請問thread 從wait狀態被叫醒 > 會經歷一次context switch嗎 好問題,在 SUN 的 Java API 中,似乎都沒有提到這個 不過不提應該是因為這跟各平台的行為息息相關...... 而且有一點要注意的,context switch 又有人稱 process switch 因為它主要是發生在 1. Process 在 CPU 的執行權完完全全被另一個取代掉 2. 程式在運算過程中,經歷了 user space 與 kernel space 的切換, 但是各個 OS 對 Thread 又各異 : Unix/Linux : 並沒有真正的支援 multi-thread,它是屬於 1-process : 1-thread 的 model (所以你在上面跑 Multithread 程式時,用 ps -aedf | grep java 會看到一大串的 process) Solaris : 這是真的有 multi-thread 的平台,它支援 1-process : n-thread 的 model 同時,Thread 又分 ULT(User Level Thread), KLT(Kernel Level Thread) 而 Solaris 同時支援這兩種,所以你說的問題 : [Java 的 Thread 從 Wait pool 醒過來時會不會經過 context switch!?] 我的答案是不一定...要看 OS 跟 JVM 的做法 P.S : 如果我有說錯的話,還請多多指教哩!! 我有個把月沒碰Java了 :P -- * Origin: ★ 交通大學資訊科學系 BBS ★ <bbs.cis.nctu.edu.tw: 140.113.23.3> --   「大哥!你....」   「你在以旁門左道的方法,逼自己的劍氣踰越極限﹖」   「廢話!」應雄反駁:   「什麼旁門左道﹖能夠將最強的功力提昇至無法再上的強中之強, 才是必勝的最佳戰略!」 -- ※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw) ◆ From: 210.201.208.96
feeians:恐龍是一定要熟讀的阿!!! 推 61.228.122.75 12/09
weii:說實話 這篇文章跟恐龍書一點關係也沒有 推 210.201.208.96 12/11