在Delphi應用程序中,一次可以運行的最大併發線程數是多少?假設一個線程處理時間大約爲100毫秒。在Delphi應用程序中可以運行的最大線程數是多少?
2
A
回答
4
併發線程數受限於可用資源。但是請記住,每個線程都使用最少量的內存(默認情況下通常爲1MB,除非您指定的內存不同),而且您運行的線程越多,操作系統管理它們的工作就越多,而且時間越多隻是爲了保持它們之間的切換,所以它們有公平的機會運行。一條好的經驗法則是不要有比可用CPU多的線程,因爲這將是在任何給定時刻可以物理運行的最大線程數。但是你肯定可以擁有比CPU更多的線程,操作系統會簡單地調度它們,如果你一次運行太多,這會降低性能。因此,您需要考慮爲什麼您首先使用線程,並根據性能,內存使用情況,開銷等情況進行相應的計劃。多線程編程並非微不足道,所以不要輕易對待它。
1
這是依賴於內存的,對於您可以創建多少個線程或其他對象沒有固定的限制。在某些時候,如果你分配的內存太多,你可能會遇到「內存不足」的異常,所以你應該考慮你需要調用和執行多少線程。還要記住你調用的線程越多,你應該期待所有線程的處理時間減少。所以如果你一次擁有太多的併發線程,你可能無法獲得你正在尋找的性能。我希望這個對你有用!
相關問題
- 1. 應用程序中的最佳線程數應該是多少?
- 2. 在Jmeter中可以同時運行的最高線程數是多少?
- 3. 可以並行使用的最大進程數是多少Stream
- 4. 一個應用程序可以在後臺運行多少天
- 5. Delphi多線程應用程序內置在Vista中,將不會運行在XP
- 6. 是否可以在Flex應用程序中運行Java程序?
- 7. 可以給IIS中應用程序池屬性的最大失敗次數給出最大值是多少?
- 8. 最大的Android應用程序大小是多少?
- 9. iPad應用程序中框架的最大寬度是多少?
- 10. 我的程序中可以擁有的最大類數是多少?
- 11. 移動Web應用程序:爲了離線使用Web應用程序,可以存儲在設備內存中的緩存的最大大小是多少?
- 12. PHP中可以使用MySQL運行的最大查詢數量是多少?
- 13. Jenkins應該運行多少個線程?
- 14. Windows Server 2003中線程的最大數量是多少?
- 15. 在java中運行多少個線程?
- 16. 是否可以在Android Things上運行多個應用程序?
- 17. 是否可以在多個域上運行Facebook應用程序?
- 18. 線程池是否可以在單線程函數上運行?
- 19. 可以包含在iOS應用程序中的文件的最大數量是多少?
- 20. Android應用程序名稱的最大長度是多少?
- 21. 是否可以在WinForms應用程序中運行獨立應用程序?
- 22. 64位Windows上的應用程序可用的最大內存是多少
- 23. PC上運行的最大線程數
- 24. 找出我的應用程序正在運行多少個線程?
- 25. OCISessionBegin掛在多線程COM +應用程序中[Delphi + ODAC + Oracle]
- 26. 在Android上,最多可以在內存中緩存多少個應用程序?
- 27. 什麼是可以運行的swing工作線程的最大數量
- 28. 多線程Delphi數據庫應用大量數據的
- 29. 是否可以在線程上運行主QT程序?
- 30. Tomcat:可以在多個運行多個應用程序實例
那麼如果我們是64位應用程序,應用程序的性能會不同。 –
你將可以訪問更多的內存,並且可以創建更多的線程,這意味着使用更多的內存,更多的時間管理線程等。因此,您仍然需要注意資源使用情況並進行平衡以提高效率。 –