Почему rx, наблюдающий за событием, пропустил? Событие не обрабатывается в то время, когда оно происходит, поэтому внутреннее состояние объекта не обновляется и вызывает проблемы в следующих полученных событиях. Может ли это быть связано с ObserveOn NewThread?
private void UpdateList(Client client)
{
var listUpdateReceive = Observable
.FromEvent<ListEventArgs>(ev => client.ListUpdateReceive += ev, ev => client.ListUpdateReceive -= ev);
listUpdateReceive.Take(1)
.Subscribe(r =>
{
TraceInformation("List is updated.");
OnListUpdateReceived(r.Sender, r.EventArgs);
});
}
Я вижу, что событие получено, но приведенный выше код блокирует!