背景任务UWP C++只触发一次
BackgroundTask UWP C++ trigger only one time?
在windows运行时组件项目(BackgroundTask c++(
#include "pch.h"
#include "BackgroundTask.h"
using namespace Platform;
namespace SyncBackground {
void BackgroundTask::Run(IBackgroundTaskInstance^ taskInstance) {
_taskInstance = taskInstance;
taskInstance->Canceled += ref new BackgroundTaskCanceledEventHandler(this, &BackgroundTask::OnCanceled);
_deferral = taskInstance->GetDeferral();
OutputDebugString(L"Debug: CPPrn");
}
void BackgroundTask::OnCanceled(IBackgroundTaskInstance^ sender, BackgroundTaskCancellationReason reason) {
_deferral->Complete();
}
}
我尝试了c#项目中的ApplicationTrigger
,但OutputDebugString
从第一个触发器只写了一次。在相同的BackgroundTask C#中,Debug.WriteLine()
写入每个触发器。
那为什么在c++中只做一次呢?以及如何让它看起来像c#(我需要通过触发器发送一些数据和命令(感谢
我需要它仍然运行后台
如果我理解正确,您只想无限期地运行后台任务。如果是这样的话,即使你不调用TaskDeferral.Complete();
,它也不会在后台运行,一段时间后,它仍然会被终止。在这种情况下,您可以参考本文档进行配置。但它提到,如果你使用它,你就不能将应用程序放入微软商店。如果没有,请指出。
相关文章:
- 我是否需要在下一次转移时将所有权*转移回转移队列
- 使用仅使用一次的变量调用的复制构造函数.这可能是通过调用move构造函数进行编译器优化的情况吗
- 在C++中一次将矢量值写入多个文件
- 循环中的条件:为什么每次都调用strlen(),而vector.size()只调用一次
- 为什么 zlib 放气初始化调用一次不起作用?
- 在一次迭代中从 txt 文件中读取多行
- 为什么无论你输入什么,这"while(cin.get(str,3))"只运行一次?
- 在头文件和 cpp 文件中使用一次 #pragma 时出现结构重定义错误
- 有没有办法一次声明相同类型的多个对象,并通过一个表达式立即使用相同的右值初始化它们?
- 高级选择排序 - 在一次迭代中搜索两个元素
- 具有相同特征的两个对象是否只在内存中存储一次?无论定义它们的函数是什么,都是不同的
- 如何仅使用一次固定<<设置精度(2)?或者至少恢复到默认行为?
- 什么是仅调用一次并调用参数的控制台应用
- 如何确保用户在一行上提示输入一次时输入名字和姓氏?
- (C++)虽然循环一次不起作用,但我引入了多个变量
- 为什么我的信号处理程序只执行一次?
- 如何使用C++一次读取整个二进制文件
- 背景任务UWP C++只触发一次
- 任务调度程序:从当前时刻开始,每小时运行一次任务
- 如何使C或c++程序每X秒执行一次特定的任务,但其间仍执行其他任务