Я попробовал этот код, чтобы убедиться, что задача может быть запущена только один раз:
static bool running = false;
public void Run(IBackgroundTaskInstance taskInstance)
{
if (running)
{
makeToast("Cancelled because another already running");
return;
}
running = true;
// Do stuff.
}
Но похоже, что выполнение остается верным, даже если все экземпляры задачи завершены.Установка его в false при отмене также не является надежной, так как метод отмены не всегда вызывается (неожиданное отключение системы, сбой ...).
Есть ли способ, если другие экземпляры работают в фоновом режимесама задача?