1

我有一个在 Raspi 3 windows 10 IOT Build 14279 上运行的应用程序,在我按下按钮后立即连接、发送、关闭套接字。应用程序运行正常 5 分钟后出现 BSOD 并显示消息“IRQL_NOT_LESS_OR_EQUAL (NETIO.SYS)”。对不起我的英语这是我的代码

private async Task Connect()
    {            
        if(connected||connecting)
        {               
            return;
        }            
        connecting = true;           
        _socket = new StreamSocket();           
        try
        {                
            await _socket.ConnectAsync(hostname, "100");
            connected = true;
            connecting = false;
        }
        catch (Exception exception)
        {

            if (SocketError.GetStatus(exception.HResult) == SocketErrorStatus.Unknown)
            {
                throw;
            } 
            connecting = false;
            _socket.Dispose();
            _socket = null;

        }            
    }

    private async Task Send(byte[] S)
    {            
        if(!connected)
        { 
            return;
        }            

        try
        {
            DataWriter writer = new DataWriter(_socket.OutputStream);
            writer.WriteInt32(S.Length);
            writer.WriteBytes(S);
            await writer.StoreAsync();               
            writer.DetachBuffer();
            writer.Dispose();
        }
        catch (Exception exception)
        {                
            if (SocketError.GetStatus(exception.HResult) == SocketErrorStatus.Unknown)
            {
                throw;
            }                
            _socket.Dispose();
            _socket = null;
            connected = false;
        }            
    }

    private void CloseSocket()
    {           
        if(!connected)
        {
            return;
        }
        connected = false;
        _socket.Dispose();
        _socket = null;                  
    }
4

0 回答 0