我的應用程序應該具有「實時暫停」功能。用戶可以暫停執行,做一些修改將要發生的事情,然後解除暫停並讓事情發生。東西按用戶指定的時間間隔發生,速度可以很慢,可以很快。線程是否有助於提高Java的效率?
我在這裏使用線程的目標是提高多核系統的性能。應用程序應該在時間間隔內緊縮的數據量應該是任意大的(我期望在集合上有很多和很多的循環,修改對象屬性和生成隨機數,但是珍貴的小磁盤訪問)。我不希望應用程序受到單個內核容量的限制,如果它可以使用更多的內存來加快運行速度。
這實際上是這樣工作嗎?我已經運行了一些測試(在程序活動期間對程序進行了大量計算,並查看了CPU的使用情況),但這並不是確鑿的結果 - 在我的雙核心機器上,使用率肯定接近100%但幾乎沒有100%。單線程(僅主要)Java應用程序是否使用所有可用的核心進行計算?
「我在這裏使用線程的目標是提高多核系統的性能。」 < - 嗯,這可能會提高性能,是的,但是在並行處理時對性能更好的影響最大的因素是處理數據的算法 – fge 2014-11-08 09:11:32
當然,單線程應用程序並不使用所有內核。 – kraskevich 2014-11-08 09:13:47