深入探索Windows 8 Store应用开发:异步操作、库使用与XAML UI构建
1. 异步操作中的任务使用
在C++开发中, task<T> 类为异步操作提供了强大支持。该类位于 concurrency 命名空间,使用时需包含 <ppltasks.h> 头文件。它是C++11的新特性,虽常用于并行编程,但在调用异步操作时也发挥着特殊作用。
task<T> 类代表结果类型为 T 的操作,能自动处理 Completed 属性注册、调用 GetResults ,并在操作从UI线程调用时使用调度程序维护线程相关性。以下是使用示例代码:
auto fileTask = create_task(picker->PickSingleFileAsync());
fileTask.then([](StorageFile^ file) {
return create_task(file->OpenReadAsync());
}).then([this](IRandomAccessStreamWithContentType^ stm) {
auto bmp = ref new BitmapImage;
bmp->SetSource(stm);
_image->Source = bmp;
});
create_
超级会员免费看
订阅专栏 解锁全文
6

被折叠的 条评论
为什么被折叠?



