cancellation相关内容

可观察订阅如何优雅地终止?

我正在尝试使用 Reactive Extensions (Rx) 来处理数据流.但是,每个元素的处理可能需要一些时间.为了中断处理,我使用了 CancellationToken,它有效地停止了订阅. 当请求取消时,我如何优雅地完成当前工作并正确终止而不丢失任何数据? 示例 var cts = new CancellationTokenSource();cts.Token.Regist ..
发布时间:2021-09-04 18:35:16 C#/.NET

在 ReactJS 中卸载组件时取消承诺

我有一个名为“Item"的组件,它在挂载后创建并调用一个 promise. class Item 扩展了 React.Component{构造函数(道具){超级(道具)this.onClick = this.onClick.bind(this)this.prom = new Promise((resolve, reject) => {setTimeout(() => resolve("承诺完成" ..
发布时间:2021-06-22 19:16:48 其他开发

POSIX线程何时不立即取消?

POSIX为线程取消类型指定两种类型: PTHREAD_CANCEL_ASYNCHRONOUS 和 PTHREAD_CANCEL_DEFERRED (由 pthread_setcanceltype(3)设置)确定何时 pthread_cancel(3)应该生效.就我的阅读而言,POSIX手册页对此没有多说,但是Linux手册页说了有关 PTHREAD_CANCEL_ASYNCHRONOUS 的以下 ..
发布时间:2021-05-29 22:43:34 服务器开发

如果一项失败,如何取消收集中的所有剩余任务?

如果 gather 的一项任务引发异常,则仍然允许其他任务继续. 嗯,那不是我真正需要的.我想区分致命的错误和需要取消所有剩余任务的错误,而不是不是的错误应该在允许其他任务继续执行的同时进行记录. 这是我实现此失败的尝试: 从asyncio导入收集,get_event_loop,睡眠类ErrorThatShouldCancelOtherTasks(Exception):经过异步def ..
发布时间:2021-05-06 18:39:57 Python

如何在不派生的情况下复制Context对象

我想复制一个上下文对象-确切地说是一个请求上下文,并稍后在一个单独的go例程中使用它. 问题是如果此请求的HTTP处理程序完成后,如果我使用 context.WithCancel(reqCtx)派生请求上下文,则不仅原始请求上下文将被取消,而且该请求的副本也将被取消请求上下文也将被取消. 我希望能够复制原始请求上下文,而不希望在HTTP处理程序执行完后被原始上下文取消. 解决方案 ..
发布时间:2021-04-24 20:04:11 其他开发

使用CancellationToken取消任务而不显式检查任务内部?

背景: 我有一个Web应用程序,可以启动长期运行(无状态)的任务: var task = Task.Run(()=>等待DoWork(foo))task.Wait(); 由于它们已运行很长时间,因此我需要能够从单独的Web请求中将其取消. 为此,我想使用CancellationToken并在令牌被取消后立即抛出异常.但是,根据我的阅读,任务取消是合作,这意味着任务正在运行的代码 ..
发布时间:2021-04-18 20:51:17 C#/.NET

取消执行方法的正确方法

可能重复: 如何中止/取消TPL任务? 我有一个方法,它需要一些时间来执行,因此我将结果作为回调返回.我的方法如下: 公共静态void DoWork(Action onCompleteCallBack){Task.Factory.StartNew(()=> {//做工作onCompleteCallBack(someResult);});} 现在,我希望能够停止执行该 ..
发布时间:2021-04-18 20:36:03 C#/.NET

如何取消可观察的序列

我有一个非常简单的 IObservable ,它每500毫秒充当一次脉冲发生器: var pulses = Observable.GenerateWithTime(0,i => true,i => i + 1,i => i,i =>TimeSpan.FromMilliseconds(500)) 我有一个 CancellationTokenSource (用于取消同时进行的其他工 ..
发布时间:2021-04-18 18:42:34 C#/.NET

F#中的协作取消和取消继续

可能我在这里有2个问题,而不是一个问题. 我正在按照此处建议的方式实施合作取消.这是我的测试代码: 类型与异步静态成员Isolate(f:CancellationToken-> Async):Async=异步{让!ct = Async.CancellationToken让isolatedTask = Async.StartAsTask(f ct)返回!Async.Await ..
发布时间:2021-04-12 19:05:02 其他开发

使用异步任务取消任务

我正在尝试使用此常见问题解答.这是我最初的想法: 私有异步void OnLoginButtonClicked(对象发送者,EventArgs e){如果(this.cancelToken == null){this.cancelToken = new CancellationTokenSource();}尝试{bool loginSuccess =等待AsyncLoginTask(this.ca ..
发布时间:2021-04-12 18:43:37 C#/.NET

为什么调用OnlyOnCanceled延续?

在下面的代码上调用 await RunAsync(); 时,我希望继续运行 TaskContinuationOptions.OnlyRanToCompletion 延续,但是 OnlyOnCanceled 连续被调用(产生调试输出“任务已取消"). 为什么? 私有静态异步任务RunAsync(){尝试{等待Task.Run(()=> DoWork()).继续((t)=>{如果(t?.Exc ..
发布时间:2021-04-12 18:39:39 C#/.NET

当集群(Slurm)取消作业时,Snakemake挂起

也许对于许多人来说答案是显而易见的,但是令我惊讶的是我找不到关于该主题的问题,这对我来说是一个重大问题. 我将不胜感激! 在由slurm管理的集群上提交作业时,如果队列管理器取消了该作业(例如,由于资源或时间不足),snakemake似乎没有收到任何信号,并且永远挂起.另一方面,当作业失败时,snakemake也将失败,正如预期的那样.这种行为正常/有害吗?取消工作时,如何使snakemak ..
发布时间:2021-02-12 19:27:12 其他开发

iOS MDM App安装/取消响应

我已经使用iOS APNS方法开发了MDM服务器,并且正在将应用程序推送到移动设备上. 我希望MDM Server知道何时成功安装了应用程序,或者用户何时取消了有关应用程序安装的警报. 我发出InstallApplication命令,并且收到状态为“已排队"的确认,但是我想在安装状态时进行确认. 我试图在InstallApplication命令之后发出ManagedApplicatio ..

vba inputBox:如何分辨“取消"与“取消"之间的区别和“确定"一个空的文本框

按下取消按钮时,vba inputBox返回一个空字符串.按下“确定"后,它将返回其文本框中的任何文本. inputBox的第三个位置参数是其文本框中的初始文本.此参数的默认值为“". 在我的应用程序中,当他单击“添加记录"按钮时,我使用inputBox要求用户指定新记录的名称.如果他按“取消",那没问题:似乎他改变了对新唱片的想法.我退出潜艇. 但是,如果他未能输入名称,或者输入名称 ..
发布时间:2020-11-28 23:33:14 其他开发

取消MySQL InnoDB中的事务,而不是提交或回滚

我正在MySQL InnoDB数据库中使用事务执行2次插入.但是,如果第一次插入失败,我想简单地“取消"交易.有没有一种好的方法来“取消"交易,而不是使用commit或rollback? 例如,在php中,我正在执行以下操作: $connection->beginTransaction(); $affectedRows = $tableOne->insertIgnore('exampl ..
发布时间:2020-11-28 18:38:49 PHP

取消的请求的正确HTTP状态代码是什么

当客户端在发出HTTP请求时取消TCP连接时,我想停止在服务器上进行任何工作并返回空响应.这样的响应应该返回什么HTTP状态代码? 解决方案 要保持一致,如果您的后端应用程序能够识别客户端何时断开连接,或者您拒绝或关闭连接,我现在建议400 Bad Request您可以返回Nginx的非标准代码499或444. 499个客户关闭请求 客户端在服务器发送响应之前关闭请求时使用. ..

Golang:如何在不派生的情况下复制Context对象

我想复制一个上下文对象-一个精确的请求上下文,以后再在一个单独的go例程中使用它。 问题如果我使用此请求的HTTP处理程序完成后,使用 context.WithCancel(reqCtx)来获取请求上下文,则不仅原始请求上下文将被取消,而且请求上下文的副本也将被取消。 我希望能够复制原始请求上下文,而不希望在HTTP之后被原始上下文取消处理程序完成执行。 解决方案 以下是如何使 ..
发布时间:2020-10-09 05:32:45 其他开发

java.util.concurrent.Future中的方法cancel()是否应该阻塞?

我正在尝试在我的项目中实现 Future 接口。 来自官方文档我们可以推断出: 方法cancel()不会引发诸如InterruptedException或ExecutionException之类的异常。而且,它没有超时的变体。 文档说 之后此方法返回后,对isDone() 的后续调用将始终返回true。 但是 布尔值isDone() 如果此任务完成,则返 ..
发布时间:2020-10-07 20:59:28 Java开发