Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
dotNET Platform
MQTTnet
提交
d8e5936d
MQTTnet
项目概览
dotNET Platform
/
MQTTnet
大约 1 年 前同步成功
通知
0
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
MQTTnet
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
d8e5936d
编写于
5月 29, 2023
作者:
C
Christian
提交者:
GitHub
5月 29, 2023
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
1724 nullreferenceexception on mqttclientconnectasync (#1748)
Update MqttClient.cs
上级
caa71754
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
7 addition
and
7 deletion
+7
-7
Source/MQTTnet/Client/MqttClient.cs
Source/MQTTnet/Client/MqttClient.cs
+7
-7
未找到文件。
Source/MQTTnet/Client/MqttClient.cs
浏览文件 @
d8e5936d
...
...
@@ -121,11 +121,11 @@ namespace MQTTnet.Client
var
mqttClientAliveToken
=
_mqttClientAlive
.
Token
;
var
adapter
=
_adapterFactory
.
CreateClientAdapter
(
options
,
new
MqttPacketInspector
(
_events
.
InspectPacketEvent
,
_rootLogger
),
_rootLogger
);
_adapter
=
adapter
;
_adapter
=
adapter
??
throw
new
InvalidOperationException
(
"The adapter factory did not provide an adapter."
)
;
if
(
cancellationToken
.
CanBeCanceled
)
{
connectResult
=
await
ConnectInternal
(
cancellationToken
).
ConfigureAwait
(
false
);
connectResult
=
await
ConnectInternal
(
adapter
,
cancellationToken
).
ConfigureAwait
(
false
);
}
else
{
...
...
@@ -133,7 +133,7 @@ namespace MQTTnet.Client
// CancellationToken.None or similar.
using
(
var
timeout
=
new
CancellationTokenSource
(
Options
.
Timeout
))
{
connectResult
=
await
ConnectInternal
(
timeout
.
Token
).
ConfigureAwait
(
false
);
connectResult
=
await
ConnectInternal
(
adapter
,
timeout
.
Token
).
ConfigureAwait
(
false
);
}
}
...
...
@@ -421,7 +421,7 @@ namespace MQTTnet.Client
return
CompletedTask
.
Instance
;
}
async
Task
<
MqttClientConnectResult
>
Authenticate
(
MqttClientOptions
options
,
CancellationToken
cancellationToken
)
async
Task
<
MqttClientConnectResult
>
Authenticate
(
IMqttChannelAdapter
channelAdapter
,
MqttClientOptions
options
,
CancellationToken
cancellationToken
)
{
MqttClientConnectResult
result
;
...
...
@@ -435,7 +435,7 @@ namespace MQTTnet.Client
if
(
receivedPacket
is
MqttConnAckPacket
connAckPacket
)
{
var
clientConnectResultFactory
=
new
MqttClientConnectResultFactory
();
result
=
clientConnectResultFactory
.
Create
(
connAckPacket
,
_a
dapter
.
PacketFormatterAdapter
.
ProtocolVersion
);
result
=
clientConnectResultFactory
.
Create
(
connAckPacket
,
channelA
dapter
.
PacketFormatterAdapter
.
ProtocolVersion
);
}
else
{
...
...
@@ -484,7 +484,7 @@ namespace MQTTnet.Client
return
(
MqttClientConnectionStatus
)
Interlocked
.
CompareExchange
(
ref
_connectionStatus
,
(
int
)
value
,
(
int
)
comparand
);
}
async
Task
<
MqttClientConnectResult
>
ConnectInternal
(
CancellationToken
cancellationToken
)
async
Task
<
MqttClientConnectResult
>
ConnectInternal
(
IMqttChannelAdapter
channelAdapter
,
CancellationToken
cancellationToken
)
{
var
backgroundCancellationToken
=
_mqttClientAlive
.
Token
;
...
...
@@ -497,7 +497,7 @@ namespace MQTTnet.Client
_publishPacketReceiverQueue
?.
Dispose
();
_publishPacketReceiverQueue
=
new
AsyncQueue
<
MqttPublishPacket
>();
var
connectResult
=
await
Authenticate
(
Options
,
effectiveCancellationToken
.
Token
).
ConfigureAwait
(
false
);
var
connectResult
=
await
Authenticate
(
channelAdapter
,
Options
,
effectiveCancellationToken
.
Token
).
ConfigureAwait
(
false
);
_publishPacketReceiverTask
=
Task
.
Run
(()
=>
ProcessReceivedPublishPackets
(
backgroundCancellationToken
),
backgroundCancellationToken
);
_packetReceiverTask
=
Task
.
Run
(()
=>
ReceivePacketsLoop
(
backgroundCancellationToken
),
backgroundCancellationToken
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录