قم بتجميع SOCKET:
public static ManualResetEvent ConnectDone = new ManualResetEvent(false);
public static void ConnectCallback(IAsyncResult ar)
{
المقبس sClient = (Socket)ar.AsyncState;
sClient.EndConnect(ar);
Console.WriteLine("المقبس متصل بـ {0}"، sClient.RemoteEndPoint.ToString());
ConnectDone.Set();
}
public static void Main(string[] arg)
{
try
{
IPHostEntry ipHost = Dns.Resolve("127.0.0.1");
IPAddress ipAddr = ipHost.AddressList[0];
IPEndPoint endPoint = new IPEndPoint(ipAddr, 11000);
المقبس sClient = new المقبس (AddressFamily.InterNetwork,
ocketType.Stream, ProtocolType.Tcp);
sClient.BeginConnect(endPoint, new AsyncCallback(ConnectCallback),
sClient);
for (int i = 0; i <5; i++)
Console.WriteLine("القيام ببعض الأعمال الأخرى.");
byte[] byteData = Encoding.ASCII.GetBytes("بعض البيانات.");
ConnectDone.WaitOne();
sClient.BeginSend(byteData, 0, byteData.Length, 0,
new AsyncCallback(SendCallback), sClient);
………
}
(الأمر: حدث إعادة الضبط اليدوي) تم إجراء عملية إعادة الضبط
اليدوية للحدث. إعادة التعيين: Reset()، Set()، WaitOne(). قم بإعادة تعيين الوقت، قم بإعادة ضبط الوقت المحدد، قم بتغيير الوقت، قد يكون من الصعب الحصول على أفضل النتائج قم بإعادة تعيين() إلى Set()، قم بإعادة تعيين() إلى إعادة تعيين()، قم بتعيين() Set() على المزيد من الوقت. حدث إعادة الضبط اليدوي هذا هو السبب في أن هذا هو ما يحدث.)
اتصل بنا، اتصل بنا ConnectDone.WaitOne(); قم بإنشاء ConnectDone.Set () وحدد ما تريد فعله قم بتشغيل ManualResetEvent.WaitOne() لتتمكن من القيام بذلك مرة أخرى. شكرا جزيلا.
اسم المنتج
: أفضل ما في
الأمر. لا داعي للقلق بشأن "المشكلة" أو "المشكلة"
قم بتشغيل المقبس الخاص بـ BeginConnect، وقم بتوصيله إلى وحدة التحكم
(int i = 0; i<
5; i++).
.WriteLine("افعل بعض الأشياء الأخرى عمل.")؛
byte[] byteData = Encoding.ASCII.GetBytes("Some Data."); تم تحديده بواسطة
"مقبس متصل بـ..." قم "ببعض الأعمال الأخرى."须等待同步方法的返回،但是在异步的情况下،将可能在5行"القيام ببعض الأعمال الأخرى."之间的某个时刻出现،"المقبس متصل بـ..." (الحصول على أفضل النتائج في المستقبل)
تم حذفه. لقد تم حذف sClient.BeginSend(...) وتم حذفه من قبل ConnectDone.WaitOne()، وقد تم حذفه مرة أخرى من قبل ConnectDone (ConnectCallback)، بعد ذلك.得同步一下
.