Ich schreibe eine Anwendung, die Socket verwendet und es wird sehr intensiv sein, dann brauche ich wirklich jeden Kern, den wir in unserem großen Server haben. Ich sehe die Frage ( wie ThreadPool verwendet wird, um Socket-Thread parallel zu betreiben ? ) Hier im Stackoverflow gibt es nur eine Antwort, die auf dieses MSDN-Beispiel verweist .
Aber ich denke, es zeigt nur, wie man es Concurrent und nicht Parallel macht, hier fragt jemand Wie CPU intensiv eine Steckdose öffnet und es sieht sehr intensiv aus, jemand hier sagen, es ist nicht helfen TPL TaskFactory.FromAsync vs Aufgaben mit Blockierungsmethoden und jemand lehren, wie es geht Hier mit TaskFactory.FromAsync ( Gibt es ein Muster zum Umbrechen von vorhandenem BeginXXX / EndXXX asynchron Methoden in asynchrone Aufgaben? ).
Wie kann ich Socket-Operationen parallel und performant halten und mit Socket umgehen? Probleme wie Trennungen, halb angeschlossene Sockets und Nachrichtengrenzen sind auf normale asynchrone Weise Kopfschmerzen. Wie man damit umgeht, wenn man TPL und Task zusammenstellt.
Sehen Sie diesen Link über TPL und traditionelle .NET Asynchronous Programming , es antwortet aber vielleicht nicht kann dir helfen. Es gibt Informationen über asynchrones Programmiermodell (APM) und ereignisbasiertes asynchrones Muster (EAP)
Tags und Links c# task-parallel-library sockets parallel-processing