каждый!
Я хочу отправлять некоторые данные, привязанные к временной шкале (так что это просто словарь <\ DateTime, MyData>) каждую X секунду (не имеет значения), пока клиент не говорит мненачать отправку заново, но с другого времени начала.
Итак, сценарий выглядит следующим образом
Client : Please, start send me data which is > DateTime1
Server: Sure! Catch!
Server: <DateTime1, Data1>,
Server: <DateTime1.AddSeconds(1), Data2>,
...,
Server: <DateTime1.AddSeconds(X), DataX>
Client : Please, start send me data which is > DateTime2
Server : Sure! Catch!
Server: <DateTime2, Data1>,
Server: <DateTime2.AddSeconds(1), Data2>,
...,
Server: <DateTime2.AddSeconds(X), DataX>
Я понимаю, как отправлять данные через веб-сокеты каждые X секунд, но не могу себе представить, как ждать новых инструкций клиента одновременно,Таким образом, любые статьи / советы будут оценены.
Заранее спасибо.
UPD: Код отправки данных:
private async Task PushData(WebSocket webSocket, Dictionary<DateTime, List<Data>> dataPerSecond)
{
var dataPerSecondSerialized = JsonConvert.SerializeObject(dataPerSecond);
var bytes = Encoding.UTF8.GetBytes(dataPerSecondSerialized);
await webSocket.SendAsync(new ArraySegment<byte>(bytes, 0, bytes.Length), WebSocketMessageType.Text, true,
CancellationToken.None);
}
и этот метод вызывается через некоторое время-переключение с Thread.Sleep () после него.