Windows Store App使用IAsyncOperationWithProgress的一个例子
来源:互联网 发布:条顿森林战役 知乎 编辑:程序博客网 时间:2024/06/04 19:48
IAsyncOperationWithProgress接口定义及其Progress属性定义原型如下:
generic<typename TResult, typename TProgress>public interface class IAsyncOperationWithProgress : IAsyncInfo
property AsyncOperationProgressHandler<TResult, TProgress>^ Progress { AsyncOperationProgressHandler<TResult, TProgress>^ get(); void set (AsyncOperationProgressHandler<TResult, TProgress>^ value);}
public delegate void AsyncOperationProgressHandler( IAsyncOperationWithProgress<TResult, TProgress> asyncInfo, TProgress progressInfo)
例子如下:
void Test(){ Windows::Foundation::IAsyncOperationWithProgress<double, int>^ async = create_async([](progress_reporter<int> report){ double n = 12.34; for (int i = 0; i < 10; ++i) { concurrency::wait(1000); n += 1.0; report.report((i + 1) * 10); } return n; }); async->Progress = ref new AsyncOperationProgressHandler<double, int>([](IAsyncOperationWithProgress<double, int>^ op, int pro){ OutputDebugString(L"progress:"); OutputDebugString(pro.ToString()->Data()); OutputDebugString(L"%...\n"); }); create_task(async).then([](double n){ OutputDebugString(L"result = "); OutputDebugString(n.ToString()->Data()); OutputDebugString(L"\n"); });}
输出结果如下:
progress:10%...
progress:20%...
progress:30%...
progress:40%...
progress:50%...
The thread 0xed4 has exited with code 0 (0x0).
progress:60%...
progress:70%...
progress:80%...
progress:90%...
progress:100%...
result = 22.34
- Windows Store App使用IAsyncOperationWithProgress的一个例子
- Windows 7中使用AMD APP OpenCL的一个简单例子
- Windows Store App对于Folder的监控
- Windows Store app samples
- Windows store app CollectionViewSource
- 开源一个上架 App Store 的相机 App
- IOS APP 使用别人的P12文件上传APP store
- Windows Store app 开发语言
- windows app store 应用推荐
- Windows store app(一)
- windows store app C#读写图像的完整代码
- Windows store app[Part 3]:认识WinRT的异步机制
- Windows store app[Part 4]:深入WinRT的异步机制
- Windows Store App安装包的生成过程
- App Store 的评分
- Spring Integration channel中使用message-store的例子
- 创建不使用信用卡的 iTunes App Store 帐户
- 使用Xcode7.1打包上传App Store遇到的问题
- 漫谈企业内部图书馆的建立与日常管理
- 探索C++的秘密之详解extern "C"
- PL/SQL备份oracle数据库
- Ext.net 中日期格式的计算
- [Git]win下git中文支持环境的配置
- Windows Store App使用IAsyncOperationWithProgress的一个例子
- C语言中的指针加减偏移量
- JS保留小数点(四舍五入、四舍六入)实例
- 安装tinyos后,出现Python.h:No such file or directory错误的解决方案
- 给数子加千分号的方法(每三个数字后加一个逗号)
- alter system switch logfile 和alter system archive log current的区别
- 为什么要设置JAVA_HOME、Path、CLASSPATH、CATALINA_HOME
- SQL Server 2005 附加到SQL Server2008 R2出现只读错误
- JSTL函数标签库 fn标签