gpt4 book ai didi

c# - c# for Unity3D 中基于任务的序列管理器

转载 作者:行者123 更新时间:2023-11-30 14:15:31 24 4
gpt4 key购买 nike

注意:这个问题应该写在https://gamedev.stackexchange.com/上因为是指Unity3D开发(与c#Unity Framework无关)

我需要一个简单的(单线程)库,它允许运行可以持续一段时间的异步任务序列(通常使用 yield)。

在 actionscript 中我曾经使用 http://www.dpdk.nl/opensource/running-tasks-in-order-with-a-task-based-sequence-manager这是一个很棒的任务排序器。

在c#中有类似的东西吗?

注意:虽然 system.threading.task 类最初似乎是一个很好的解决方案,但 Unity 3.5 不支持 .net framework 4。我可以使用的版本是 3.5。有其他选择吗?

最佳答案

您想看一下 Task Parallel Library .这个库可以用于多线程,也可以不用于,所以它相当健壮。事实上,它是 .NET 的下一版本 async/await 关键字的基础。我将很快编写一个快速代码片段。

var task = Task.Factory.StartNew<String>(
()=>
{
//Do some long running task
return "Here are my results from part 1";
})
.ContinueWith<Int32>(
(previousTask)=>
{
var previousResult = previousTask.Result;
//Do some other long running task using the previous result
return 1;
});

您可以使用 TPL 做很多事情。这只是一个大概的想法。

此外,还有 yield迭代器的关键字,但这不一定是异步的。

关于c# - c# for Unity3D 中基于任务的序列管理器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9892280/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com