語言是Java和問題:讓一些應用程序在端口上偵聽,並且此應用程序是多線程的,線程保存在ThreadLocals集合中。可以通過打開套接字來傳輸和傳輸文件,可以我打開套接字並將其傳遞給特定的線程?應用程序已經在套接字之間傳輸了特定的可串行化的X接口對象。套接字流寫作
Q
套接字流寫作
2
A
回答
1
我同意彼得。但是如果你退後一步,驗證你的設計,並決定你真的需要這個,我認爲你可以做到以下幾點。
您應該向您的協議添加任何線程指示。假設你調用你的線程1,2,3等。因此,從客戶端發送的每個命令都應該包含它所專用的線程ID。監聽線程應該提取此值並將任務提交給特定線程。我不知道你是否可以使用現有的線程池,你需要你自己的線程池。但是不用擔心:如果你的線程池很簡單(即不會動態地改變線程數量等),那麼編寫自己的線程池只需要10個代碼行:創建線程列表List<Thread>
,並寫入填充它的循環:threads.add(new Thread())
。
每個線程都應該在自己的隊列Runnable
s上等待。當新任務到達線程#n時,只需創建runnable並將其放入相應的隊列。
0
有一個工作線程的最簡單方法是(如果你願意或游泳池)使用的ExecutorService它是單線程的,然後你可以給它的任務與
ExecutorService executor = Executors.newSingleThreadExecutor();
executor.execute(new Runnable() { ... });
executor.shutdown();
不知道爲什麼你會保持線程在ThreadLocal變量中。也許是時候從設計中退一步,問問自己是否可以以更簡單的方式做到這一點。
+0
爲什麼大家都不喜歡Java的ThreadLocals? – hephestos 2010-12-08 07:58:25
相關問題
- 1. 套接字寫
- 2. java - 套接字流
- 3. SSL流套接字連接
- 4. 連接VMCI流套接字
- 5. 讀寫套接字
- 6. 寫入套接字
- 7. Java套接字輸出流
- 8. SO_KEEPALIVE爲PHP流套接字
- 9. Php套接字vs流
- 10. Java中的套接字流
- 11. 帶SSL的流套接字
- 12. Android的套接字流
- 13. 監控流套接字Java
- 14. ios套接字流問題
- 15. 將字符串寫入套接字的輸出流
- 16. HTTP流量vs套接字流量
- 17. 寫入Node.js套接字
- 18. TCL書寫套接字
- 19. 套接字寫入錯誤
- 20. 寫和讀 - 套接字AF_UNIX
- 21. 套接字寫入錯誤
- 22. 套接字讀/寫錯誤
- 23. 寫入C#套接字
- 24. android套接字寫錯誤
- 25. 寫入TCP套接字
- 26. PHP流式套接字不支持HTML5套接字?
- 27. readLine套接字輸入流導致在套接字掛起
- 28. Android的套接字連接流
- 29. iOS - 如何創建一個讀寫流到網絡套接字?
- 30. 斯卡拉套接字無法寫入輸出流
只是想添加年齡,因爲這個想法,我做了一個表,我跟蹤客戶端/服務器之間的線程通信。 – hephestos 2013-02-04 15:22:04