I have a method that calls a "bridge" for TraderMarketInfo
. When info is received, it checks if info IsSet
and raises an event. I want to make this method async. C# .NET4.0 VS2012.
Original method:
public void RequestMarketInfo()
{
TraderMarketInfo marketInfo = bridge.GetMarketInfoAll(Data.Symbol);
if (marketInfo.IsSet)
OnMarketInfoUpdated(new MarketInfoUpdateEventArgs(Data.ConnectionId, marketInfo));
}
My attempt to make it async:
public void RequestMarketInfo()
{
var task = Task<TraderMarketInfo>.Factory.StartNew(() => bridge.GetMarketInfoAll(Data.Symbol));
task.ContinueWith(t =>
{
if (t.Result.IsSet)
OnMarketInfoUpdated(new MarketInfoUpdateEventArgs(Data.ConnectionId, t.Result));
});
}
Is it done right?