程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 線程-操作系統的中斷和程序的中斷

線程-操作系統的中斷和程序的中斷

編輯:編程綜合問答
操作系統的中斷和程序的中斷

操作系統的中斷和java程序中的線程中斷Thread.interrupted()有什麼區別

最佳回答:


操作系統中斷是指CPU對系統發生的某個事件做出的一種反應,CPU暫停正在執行的程序,保留現場後自動地轉去執行相應的處理程序,處理完該事件後再返回斷點繼續執行被“打斷”的程序。
中斷可分為三類,第一類是由CPU外部引起的,稱作中斷,如I/O中斷、時鐘中斷、控制台中斷等。第二類是來自CPU的內部事件或程序執行中的事件引起的過程,稱作異常,如由於CPU本身故障(電源電壓低於105V或頻率在47~63Hz之外)、程序故障(非法操作碼、地址越界、浮點溢出等)等引起的過程。
第三類由於在程序中使用了請求系統服務的系統調用而引發的過程,稱作“陷入”(trap,或者陷阱)。前兩類通常都稱作中斷,它們的產生往往是無意、被動的,而陷入是有意和主動的。

java:
一個線程在未正常結束之前, 被強制終止是很危險的事情. 因為它可能帶來完全預料不到的嚴重後果. 所以你看到Thread.suspend, Thread.stop等方法都被Deprecated了.
那麼不能直接把一個線程搞掛掉, 但有時候又有必要讓一個線程死掉, 或者讓它結束某種等待的狀態 該怎麼辦呢? 優雅的方法就是, 給那個線程一個中斷信號, 讓它自己決定該怎麼辦.這個線程收到中斷信號後, 會拋出InterruptedException

u012437631
u012437631
u012437631
danielinbiti
u012437631
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved