我有一個服務器端項目,必須在.Net平臺上開發,但我懷疑c#套接字的性能,有些人告訴我C#應用程序總是會吃很多內存,特別是當不斷交換大量數據即時的。內存數據回收太慢。任何人都對C#套接字性能有一些想法?C#套接字vs C++套接字,哪個更好?
回答
這取決於你。有些人可能會說C#具有更好的內置功能,因爲它被更好地封裝和封裝。對我而言,這是個人選擇。當我在.NET中開始一個新項目時,我選擇了C#。在較早的應用程序中,我使用帶有Socket通信的C++ Builder 5,它的速度和性能與C#版本一樣好。在C++版本中(封裝爲C#),由於網絡連接丟失或套接字上的其他錯誤,會有事件提供錯誤處理。對我來說,底線是我不會將你的應用程序的語言選擇基於套接字。
我會堅持到C#圖層。從錯誤處理的角度來看,這是一個更安全的環境,如果你的套接字和線程模型被正確設計(就像你必須從C++中完成),我不相信你會看到顯着的性能影響。
C#套接字沒有明顯的性能損失。
除非您的應用程序經常受CPU限制,否則您將從C#解決方案所隱含的安全性中受益,遠比非託管C++解決方案的任何性能優勢更大。
是不是C#套接字需要注意內存泄漏? – 2009-11-29 02:36:58
.NET框架在處理內存和防止泄漏方面做得非常好 – Paul 2009-11-29 02:45:09
使用C#。託管C++最好不好。無論如何,如果你正在設計一個服務器端應用程序,資源使用將不會是(例如)指數級的。無論您使用什麼套接字實現,您都可以像線性升級一樣。
最後,沒有什麼你不能通過硬件來修復它。
- 1. C#套接字vs NodeJS Socket.IO
- 2. Java套接字到C套接字
- 3. C++套接字-WString到Java套接字
- 4. Socket.io + C套接字
- 5. Silverlight c#套接字
- 6. c#套接字連接
- 7. C#-PHP套接字連接
- 8. C#套接字雙連接?
- 9. 套接字程序Python vs C++(Winsock)
- 10. C#套接字發送vs BeginSend性能
- 11. 套接字VS WinPcap
- 12. WCF VS.套接字
- 13. 哪個更適合套接字管理 - C++還是Java?
- 14. dev-C++套接字錯誤
- 15. 從C讀取套接字
- 16. 套接字C#線程
- 17. C#套接字錯誤10022
- 18. C#套接字和SslStreams
- 19. C#SSL安全套接字
- 20. UDP - 原始套接字 - C#
- 21. c#套接字阻止
- 22. HTTP over C#套接字
- 23. Windows套接字WSACleanup C++
- 24. 套接字編程。 c#.net
- 25. C#套接字程序
- 26. C套接字命令?
- 27. 套接字編程,C-java
- 28. C#套接字編程
- 29. 創建套接字C++
- 30. C#異步套接字BeginSend
「有些人」顯然沒有完全理解和了解.NET – 2009-11-29 02:00:32
您是否清楚瞭解.NET垃圾收集器進程?它的弱點是什麼?如何避免這個弱點? – 2009-11-30 01:11:22