gpt4 book ai didi

c# - Pubnub 执行同步请求

转载 作者:太空狗 更新时间:2023-10-29 21:39:02 26 4
gpt4 key购买 nike

我有这个异步请求:

Pubnub pn = new Pubnub(publishKey, subscribeKey, secretKey, cipherKey, enableSSL);

pn.HereNow("testchannel", res => //doesn't return a Task
{ //response
}, err =>
{ //error response
});

问题是我不知道如何同步运行它。请帮忙。

最佳答案

我对 pubnub 不熟悉,但你想要实现的应该像这样简单:

Pubnub pn = new Pubnub(publishKey, subscribeKey, secretKey, cipherKey, enableSSL);

var tcs = new TaskCompletionSource<PubnubResult>();

pn.HereNow("testchannel", res => //doesn't return a Task
{ //response
tcs.SetResult(res);
}, err =>
{ //error response
tcs.SetException(err);
});

// blocking wait here for the result or an error
var res = tcs.Task.Result;
// or: var res = tcs.Task.GetAwaiter().GetResult();

请注意,不推荐同步执行异步操作。你应该考虑使用 async/await,在这种情况下你会这样做:

var result = await tcs.Task;

关于c# - Pubnub 执行同步请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28486898/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com