亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

C# DataReceived事件的異步處理

c#
小樊
83
2024-08-08 20:55:40
欄目: 編程語言

在C#中,可以通過DataReceived事件來異步處理數據的接收。DataReceived事件通常用于讀取串行端口或網絡流中的數據。以下是一個示例代碼,演示了如何使用DataReceived事件異步處理串行端口數據的接收:

using System;
using System.IO.Ports;

class SerialPortExample
{
    static SerialPort serialPort;

    static void Main()
    {
        serialPort = new SerialPort("COM1", 9600); // 設置串行端口和波特率
        serialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);

        serialPort.Open(); // 打開串行端口

        Console.WriteLine("Press any key to exit.");
        Console.ReadKey();

        serialPort.Close(); // 關閉串行端口
    }

    static void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
    {
        SerialPort sp = (SerialPort)sender;
        string data = sp.ReadExisting(); // 讀取接收到的數據

        Console.WriteLine("Data received: " + data);
    }
}

在上面的代碼中,首先創建了一個SerialPort對象,并設置了串行端口和波特率。然后注冊了DataReceived事件處理程序DataReceivedHandler。在DataReceivedHandler中,通過ReadExisting方法讀取接收到的數據,并進行相應的處理。

需要注意的是,DataReceived事件是在數據接收到串行端口緩沖區時觸發的,因此可以在事件處理程序中異步地處理數據。在本例中,DataReceivedHandler方法會在接收到數據時被調用,并打印接收到的數據。

最后,在Main方法中打開串行端口,并通過Console.ReadKey()方法等待用戶按下任意鍵來退出程序時關閉串行端口。

希望這個示例能夠幫助你了解如何使用DataReceived事件異步處理數據的接收。

0
海原县| 内丘县| 潞西市| 江城| 绿春县| 延边| 康乐县| 玉屏| 隆回县| 萝北县| 华池县| 哈巴河县| 赤城县| 本溪| 梁山县| 保山市| 沁源县| 石阡县| 汽车| 米泉市| 霍州市| 沛县| 呼和浩特市| 麦盖提县| 库伦旗| 调兵山市| 伊金霍洛旗| 武川县| 保德县| 乳源| 丹巴县| 古蔺县| 龙泉市| 佳木斯市| 锡林浩特市| 炎陵县| 东海县| 乌鲁木齐县| 天气| 阳朔县| 青浦区|