C# UWP:如何在不减慢速度的情况下运行任务?

C# UWP:如何在不减慢速度的情况下运行任务?,c#,uwp,real-time,midi,C#,Uwp,Real Time,Midi,我正在用c语言开发一个uwp应用程序,能够播放midi文件。我创建了一个ThreadPoolTimer来扫描1毫秒的滴答声,并创建了另一个ThreadPool来运行异步任务,相对于滴答声扫描的时间来启动文件的midi消息。它工作正常,但当我使用笔记本电脑进行其他操作时,它会出现减速行为。主要是在后台打开gui时。我用Task.Run()更改了ThreadPool.RunAsync(),它工作得更好,但我正试图了解使用uwp实现实时应用程序的最佳方法是什么,因为我需要实现新任务。此外,我想以编程方

我正在用c语言开发一个uwp应用程序,能够播放midi文件。我创建了一个ThreadPoolTimer来扫描1毫秒的滴答声,并创建了另一个ThreadPool来运行异步任务,相对于滴答声扫描的时间来启动文件的midi消息。它工作正常,但当我使用笔记本电脑进行其他操作时,它会出现减速行为。主要是在后台打开gui时。我用Task.Run()更改了ThreadPool.RunAsync(),它工作得更好,但我正试图了解使用uwp实现实时应用程序的最佳方法是什么,因为我需要实现新任务。此外,我想以编程方式更改我的应用程序的基本优先级,因为它在高优先级下工作得更好,但我不想每次都手动更改它。 我怎样才能完成这些任务?我在互联网上搜索,但我没有在uwp中找到任何有用的信息

多谢各位

编辑:我想使用此应用程序播放音乐,所以我需要开发具有高性能功能的应用程序。为此,我需要以高优先级直接启动它


也许我可以开发一些库

任务的实现使用后台的线程池,任务的主要好处是它们允许您较少关注多线程的低级方面。因此,一般来说,除非您需要低级控制,否则我们通常使用任务。另外,你是说你想改变UWP应用程序在任务管理器中的优先级吗?你有没有考虑改变只有那个线程才真正完成实时任务的优先级?你好,我做了一个测试,用TimeTimeC类改变TycPooTrime1ms,所以我使用系统时钟进行时间扫描,它工作得很好。也许我增加了ThreadPoolTimer的优先级来解决这个问题。我试试这个。然而,使用系统时钟的好方法是什么?我不是shureIt,使用系统时钟似乎是可行的。有关ThreadPoolTimer的更多详细信息,您可以参考本文。任务的实现使用后台线程池,任务的主要好处是它们允许您减少对多线程的低级方面的关注。因此,一般来说,除非您需要低级控制,否则我们通常使用任务。另外,你是说你想改变UWP应用程序在任务管理器中的优先级吗?你有没有考虑改变只有那个线程才真正完成实时任务的优先级?你好,我做了一个测试,用TimeTimeC类改变TycPooTrime1ms,所以我使用系统时钟进行时间扫描,它工作得很好。也许我增加了ThreadPoolTimer的优先级来解决这个问题。我试试这个。然而,使用系统时钟的好方法是什么?我不是shureIt,使用系统时钟似乎是可行的。有关ThreadPoolTimer的更多详细信息,您可以参考以下内容。