小编Ben*_*ams的帖子

为工作流应用程序推荐设计模式

我正在开发一个用户可以执行任务/工作流程的应用程序.每个任务都由要执行的操作队列组成.我希望能够在工作流程启动后能够输入用户.

例:

  • 任务开始
    • Action1启动
    • Action1结束
    • Action2启动
    • Action2结束
    • Action3需要用户输入(UI打开窗口以获取用户输入)
    • Action3获取用户输入
    • Action3开始了
    • Action3结束
  • 任务结束

我正在开发这个C#,我知道Workflow Foundation和C#中的任务.它们可能有我需要的东西,但我也有兴趣听到从头开始这样做的设计模式.

c# workflow user-interface design-patterns workflow-foundation

13
推荐指数
1
解决办法
2万
查看次数

当应用程序关闭时,我可以检测应用程序何时杀死后台线程吗?

我在C#中使用了一个线程,我将IsBackground属性设置为true.线程在循环中运行一些代码,直到应用程序关闭.当应用程序关闭时,线程也会停止执行(因为我设置了IsBackground = true).

应用程序如何杀死线程?它似乎不是通过调用abort来实现的,因为我没有得到ThreadAbortException.它是在幕后发生的吗?我想在我的循环块中做一些回滚.

我知道我可以自己在线程上调用abort,但我想知道应用程序如何关闭我的后台线程,以及我是否可以从线程内部做出反应.我知道我可以订阅Application.ApplicationExit事件,但是我在服务和winform中运行这个代码,我更喜欢在循环中捕获异常,所以我能够在finally语句中回滚.

c# multithreading isbackground threadabortexception

12
推荐指数
1
解决办法
1858
查看次数