Update solution to support Visual Studio 2013. Fix problems with async quote events

This commit is contained in:
vdemydiuk
2016-04-09 17:29:15 +03:00
parent c256e4f80f
commit 9b40712c9c
13 changed files with 172 additions and 25 deletions
+24 -5
View File
@@ -2,26 +2,45 @@
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MtApi
{
static class ExtensionMethods
{
#region Event Methods
public static void FireEvent(this EventHandler eventHandler, object sender)
public static async void FireEvent(this MtApiQuoteHandler evenHandler, object sender, string symbol, double bid, double ask)
{
if (eventHandler != null)
if (evenHandler != null)
{
eventHandler(sender, EventArgs.Empty);
await Task.Factory.StartNew(() =>
{
evenHandler(sender, symbol, bid, ask);
});
}
}
public static void FireEvent<T>(this EventHandler<T> eventHandler, object sender, T e)
public static async void FireEvent(this EventHandler eventHandler, object sender)
{
if (eventHandler != null)
{
await Task.Factory.StartNew(() =>
{
eventHandler(sender, EventArgs.Empty);
});
}
}
public static async void FireEvent<T>(this EventHandler<T> eventHandler, object sender, T e)
where T : EventArgs
{
if (eventHandler != null)
{
eventHandler(sender, e);
await Task.Factory.StartNew(() =>
{
eventHandler(sender, e);
});
}
}