| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- /**
- *
- * @date 2014-10-17
- *
- * @author 邓尹平
- *
- * @par 成员列表类 说明
- * 主要负责管理成员 提供搜索\排序和操作的方法
- *
- * @par 版权声明
- * 深圳市多元世纪信息技术有限公司 版权所有
- *
- * @see 使用此类时参照一些其他类可以写在这里
- *
- * @todo 该类有待完成的任务 一条条列出 完成一条删除一条
- *
- * @bug 该类已知的Bug一条条列出 完成一条删除一条
- *
- */
- using System;
- using System.Threading.Tasks;
- using System.Windows;
- namespace Muchinfo.PC.Common.Extensions
- {
- public static class ThreadExtensions
- {
- public static Task TryStartNew(this TaskFactory factory, Action action, Action actionBusy)
- {
- return factory.StartNew(() =>
- {
- try
- {
- action();
- }
- catch (Exception ex)
- {
- Application.Current.Dispatcher.BeginInvoke(new Action(() =>
- {
- throw ex;
- }));
- }
- finally
- {
- Application.Current.Dispatcher.BeginInvoke(new Action(() =>
- {
- if (actionBusy != null)
- actionBusy();
- }));
- }
- });
- }
- public static Task TryStartNew(this TaskFactory factory, Action action)
- {
- return factory.StartNew(() =>
- {
- try
- {
- action();
- }
- catch (Exception ex)
- {
- Application.Current.Dispatcher.BeginInvoke(new Action(() =>
- {
- throw new Exception(ex.Message);
- }));
- }
- });
- }
- }
- }
|