##// END OF EJS Templates
Added utility class for safe disposing methods....
Added utility class for safe disposing methods. Added event fireing while promise is cancelled (needs some more work)

File last commit:

r0:279591fb4df3 default
r1:6fb3b01ee971 default
Show More
AsyncPool.cs
28 lines | 691 B | text/x-csharp | CSharpLexer
using System;
using System.Threading;
namespace Implab {
/// <summary>
/// Класс для распаралеливания задач.
/// </summary>
/// <remarks>
/// Используя данный класс и лямда выражения можно распараллелить
/// вычисления, для этого используется концепция обещаний.
/// </remarks>
public static class AsyncPool {
public static Promise<T> Invoke<T>(Func<T> func) {
var p = new Promise<T>();
ThreadPool.QueueUserWorkItem(param => {
try {
p.Resolve(func());
} catch(Exception e) {
p.Reject(e);
}
});
return p;
}
}
}