回答
任何時候軟件都有一個取消按鈕,它通常不會殺死正在處理的進程/線程。您可以在許多應用程序中看到相同的取消(和等待)行爲。這就是爲什麼Mac已經強制退出並且Windows已經退出,看起來似乎沒有退出的應用程序。
因此,在代碼級別,爲什麼會發生這種情況,您可能只會設置一個標誌,表示「一旦完成了您現在正在處理的任何循環,就停止這樣做」。會發生什麼是您設置了標誌,但循環遠沒有完成,並且每隔一段時間都不檢查是否觸發了取消標誌。因此,除了下載源代碼並提交補丁外,您可能無法做的很多。
我只想補充一點,大多數情況下,這不是代碼不經常檢查取消的問題。通常,問題在於網絡調用中的代碼被阻止,直到超時才能返回,或者安全取消是一個昂貴的操作(需要刪除很多臨時狀態)。取消不被解釋爲「不惜任何代價中止」的請求。只有在安全的情況下,代碼纔會取消作業。 – 2011-03-13 21:00:10
我同意。你可以做的是通過NIO運行網絡請求,這樣你就可以在主循環中檢查取消請求。如果你認爲你可能有很長的網絡請求,讓用戶取消它。 – Scott 2011-03-13 21:04:22
http://my-brain-on-eclipse.blogspot.co.uk/2006/11/cancel-means-cancel.html – Stewart 2012-10-05 13:53:41
- 1. 爲什麼刷新html頁面很慢
- 2. 爲什麼MinGW很慢?
- 3. 爲什麼babel transpilation很慢?
- 4. 爲什麼ODBC很慢?
- 5. 爲什麼lockCanvas()很慢?
- 6. 爲什麼boost :: function很慢?
- 7. 爲什麼方法很慢?
- 8. 爲什麼C#Parallel.Invoke很慢?
- 9. 爲什麼dataframe.values很慢
- 10. 爲什麼SQL在更新時會很慢?
- 11. Solr更新很慢
- 12. 如何解決爲什麼Eclipse啓動JVM的速度很慢?
- 13. 爲什麼spring-amqp的消費者表現很慢?
- 14. c#很慢的Gridview更新。
- 15. MongoDB批量更新很慢
- 16. 甲骨文更新很慢
- 17. 爲什麼這個遞歸很慢?
- 18. JavaScript爲什麼操縱__proto__很慢?
- 19. 爲什麼我的requestAnimFrame仍然很慢?
- 20. 爲什麼上下文切換很慢?
- 21. 爲什麼搜索多張表很慢?
- 22. OpenGL GLUT窗口很慢,爲什麼?
- 23. 爲什麼textchangelistener速度很慢?
- 24. 爲什麼釋放速度很慢?
- 25. 爲什麼這個SQL查詢很慢?
- 26. 爲什麼我的Shell排序很慢?
- 27. 爲什麼Crystal Reports PrintToPrinter方法很慢
- 28. R diff函數爲什麼很慢?
- 29. 爲什麼我的角柵很慢?
- 30. 爲什麼sql.rows Groovy方法很慢
Eclipse臃腫,插件更加臃腫。我使用Eclipse,也有同樣的問題。這是一個網絡請求,所以你的網絡可能會很慢,或者遠程服務器可能會很慢。 – Scott 2011-03-13 16:02:30