java Java如何控制進(jìn)程執(zhí)行時間?
Java如何控制進(jìn)程執(zhí)行時間?任何語言都不能達(dá)到控制進(jìn)程時間的目的!但是可以控制在規(guī)定的范圍內(nèi)!通過對系統(tǒng)性能的優(yōu)化,對操作系統(tǒng)CPU的性能評價,對文件系統(tǒng)的性能評價,就有可能把進(jìn)程時間控制在一定的范
Java如何控制進(jìn)程執(zhí)行時間?
任何語言都不能達(dá)到控制進(jìn)程時間的目的!但是可以控制在規(guī)定的范圍內(nèi)!通過對系統(tǒng)性能的優(yōu)化,對操作系統(tǒng)CPU的性能評價,對文件系統(tǒng)的性能評價,就有可能把進(jìn)程時間控制在一定的范圍內(nèi)
!語言可以捕獲CPU信息,控制磁盤信息的線程數(shù),達(dá)到控制進(jìn)程所消耗時間的目的!如果CPU是單核的,關(guān)閉多線程操作可以節(jié)省時間。如果線程之間沒有調(diào)度,將節(jié)省大量時間。多核CPU使用多線程來指定任務(wù),這將大大提高CPU利用率和節(jié)省時間!此線程優(yōu)化可以確保進(jìn)程時間控制在指定范圍內(nèi)
!系統(tǒng)所在的進(jìn)程可分為兩種類型:一種是CPU密集型。如上所述,它是CPU密集型的。線程主要用于計算。因此,線程消耗的時間是在CPU計算中。為了控制時間,我們必須考慮CPU的性能!二是I/O密集型,即系統(tǒng)需要大量的輸入輸出寫操作,CPU利用率不高,大部分都是磁盤讀寫、套接字讀寫操作,Java可以采用多線程/NiO/高并發(fā)的方式來處理IO密集型任務(wù),縮短時間
!不可能完全控制時間。我們只能根據(jù)硬件進(jìn)行優(yōu)化
Java進(jìn)程和操作系統(tǒng)進(jìn)程有什么關(guān)系?
Java進(jìn)程的實現(xiàn)就是創(chuàng)建一個操作系統(tǒng)的進(jìn)程,也就是說,在JVM中創(chuàng)建的每個進(jìn)程對應(yīng)一個操作系統(tǒng)中的進(jìn)程。然而,為了給用戶更好、更方便的使用,Java屏蔽了一些與平臺相關(guān)的信息。
使用C/C創(chuàng)建系統(tǒng)進(jìn)程時,可以設(shè)置PID值,通過PID值可以直接操作相應(yīng)的進(jìn)程。但在Java中,用戶只能通過實例引用進(jìn)行操作。當(dāng)參考資料丟失或無法獲得時,他們無法了解任何有關(guān)進(jìn)展的信息。
在使用java進(jìn)程時,還需要注意一些事項