किसी के लिए प्राप्त करता है जो आईपीसी और नामांकित पाइप्स के लिए नया है, मुझे निम्नलिखित NuGet पैकेज को बहुत मदद मिली है।
GitHub: Named Pipe Wrapper for .NET 4.0
पहले उपयोग करने के लिए पैकेज स्थापित:
PS> Install-Package NamedPipeWrapper
तो एक उदाहरण सर्वर (लिंक से नकल):
var server = new NamedPipeServer<SomeClass>("MyServerPipe");
server.ClientConnected += delegate(NamedPipeConnection<SomeClass> conn)
{
Console.WriteLine("Client {0} is now connected!", conn.Id);
conn.PushMessage(new SomeClass { Text: "Welcome!" });
};
server.ClientMessage += delegate(NamedPipeConnection<SomeClass> conn, SomeClass message)
{
Console.WriteLine("Client {0} says: {1}", conn.Id, message.Text);
};
server.Start();
उदाहरण ग्राहक:
var client = new NamedPipeClient<SomeClass>("MyServerPipe");
client.ServerMessage += delegate(NamedPipeConnection<SomeClass> conn, SomeClass message)
{
Console.WriteLine("Server says: {0}", message.Text);
};
client.Start();
मेरे लिए इसके बारे में सबसे अच्छी बात यह है कि यहां स्वीकृत उत्तर के विपरीत यह एक सर्वर से बात करने वाले कई ग्राहकों का समर्थन करता है।
स्रोत
2015-11-07 11:24:18
बस सोच क्या पंक्ति: 16 System.Thread में माना जाता है 'देरी' के लिए कोई परिभाषा है क्योंकि टास्क –
@ जोर्डन ट्रेनर क्षमा करें, यह नेट 4.5 में है। आप 'थ्रेड स्लीप' –
का उपयोग कर सकते हैं इस उदाहरण में कार्य का उपयोग बहुत सख्त है। यह वर्बोज़ सिंटैक्स है और शेड्यूलिंग के कारण 1000ms के करीब भी नहीं हो सकता है। – Gusdor