-1
A
回答
1
它完全取決於線程期望從套接字獲得的內容。來自套接字的數據不太可能在三線程的讀取之間被混淆,因此您需要在一定範圍內進行一些同步,而不僅僅是確保每個線程都可以從套接字讀取字節而不干擾其他線程'做同樣的能力。
那麼線程應該如何同步呢?他們是否獨立地將記錄拉出插座?他們都應該讀取所有數據嗎?還有別的嗎?
如果他們獨立地從套接字中提取記錄,那麼應該只需要一個線程從套接字讀取記錄,構造某種記錄對象,並將這些對象放置在線程安全隊列中以供3個線程訪問。
如果線程都應該讀取相同的數據,那麼您有一個緩衝區,其中每個線程向緩衝區註冊,並且緩衝區會跟蹤每個讀者的位置。然後緩衝區會保留數據,直到所有線程都讀取完畢,並且一旦所有線程都清除了數據並用套接字中的更多數據填充該空間。
相關問題
- 1. C++ OpenGL多線程緩衝區資源
- 2. 線程安全緩衝區封裝流
- 3. Java中的線程和緩衝區
- 4. 在線程間共享幀緩衝區
- 5. 線程安全循環緩衝區?
- 6. 線程安全緩衝區陣列
- 7. 循環緩衝區的線程安全
- 8. 打印緩衝區終止線程
- 9. 多態性c和緩衝區
- 10. Rx緩衝Winsock Socket編程C++。如何清除RX緩衝區?
- 11. C編程套接字緩衝區
- 12. C編程中的緩衝區數組?
- 13. C++ DLL中線程安全的字符串緩衝區變量
- 14. c多線程衝突
- 15. 如何保護使用多線程的緩衝區?
- 16. 高效的多線程共享訪問內存緩衝區
- 17. 如何同步多線程OpenGL緩衝區訪問?
- 18. C填充緩衝區
- 19. Linux C定義緩衝區
- 20. C++ HLSL緩衝區變量
- 21. C++緩衝區疼痛
- 22. C++緩衝區與Qt
- 23. 從緩衝區讀取C
- 24. C++中的位緩衝區
- 25. C++溢出緩衝區
- 26. C - fread()緩衝區索引
- 27. 緩衝區管理c
- 28. c#緩衝區說明
- 29. C Windows緩衝區大小
- 30. 讀取緩衝區C++
你想施加什麼樣的規則。 Serialise閱讀?或者是其他東西? –