У меня есть код, который медленно транслируется из наблюдаемого. Я хотел бы имитировать живой поток из сохранившихся объектов и их отметку времени через другую наблюдаемую.Как построить один запланированный Наблюдаемый из массива с отметками времени
Я смог что-то сделать, используя Observable.Return.Delay на массиве, а затем слияние с одним наблюдаемым. Я чувствую, что это неправильный подход, и, возможно, для каждого элемента нужен поток, поэтому синхронизация может завершиться неудачно, когда пул потоков будет заполнен.
var data = Enumerable.Range(1, 10);
var observable = data
.Select((x, idx) => Observable.Return(x).Delay(DateTimeOffset.Now.AddSeconds(idx*3)))
.Merge();
Каков наилучший способ запланировать статические данные?
Это для тестирования? – Shlomo
Это для воспроизведения производственной среды в UAT. – KrisG
Возможно, вы захотите использовать что-то вроде '.Concat' вместо' Merge' else с очень большими наборами для 'data', вы можете просто затопить Планировщик. Это будет работать, только если у вас есть относительные отметки времени. Однако вы, например, просто используете сгенерированный 'idx', который, как я полагаю, не то, что вы на самом деле делаете (вместо этого читайте из журнала или потока событий) –