public static void ExecuteWithPool() { Promise.Config.ObjectPooling = Promise.PoolType.All; var task = Execute(); ProtoPromiseHelper.ResolveDeferreds(); task.Wait(); }
private static void Execute() { Promise <object> .Deferred deferred = Promise.NewDeferred <object>(); var promise = deferred.Promise; for (int i = 0; i < N; ++i) { promise = promise .ContinueWith(i, (index, _) => ProtoPromiseHelper.protoVoids[index].Promise) .ContinueWith(i, (index, _) => ProtoPromiseHelper.protoVectors[index].Promise) .ContinueWith(i, (index, _) => ProtoPromiseHelper.protoObjects[index].Promise); } deferred.Resolve(Instances.obj); Promise.Manager.HandleCompletesAndProgress(); ProtoPromiseHelper.ResolveDeferreds(); }