1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
public Form1() { var byteString = Encoding.UTF8.GetBytes("Hello World !!!"); var ms = new System.IO.MemoryStream(); ms.BeginWrite(byteString, 0, byteString.Length, CallBack, ms); // MemoryStreamに書き込み // Beginで別スレッド化 // obj はコールバックに引き渡したい任意のオブジェクト MessageBox.Show("終了"); //while(!ar.IsCompleted) { } // コールバックを使わず。ステータスのポーリングでもOK } private void CallBack(IAsyncResult ar) { // 処理が終わるとコールバックが呼ばれる。コールバックの中でEndを呼ぶ。 var ms = (System.IO.MemoryStream)ar.AsyncState; ms.EndWrite(ar); var buf = ms.ToArray(); // MemoryStreamをバイト配列へ System.Threading.Thread.Sleep(2000); MessageBox.Show(Encoding.UTF8.GetString(buf)); } |
対応している型
System.IO.Stream
System.IO.Ports.SerialPort
System.Net.Dns
System.Net.Sockets.Socket
System.Net.WebRequest
System.Data.SqlClient.SqlCommand