вот приходит мне общий токен отмены как параметн, а я хочу чтобы отменялось не тока по нему, но и по указанному таймауту
мне что вот стока хлама нада написать?
void Get(CancellationToken cancellation)
{
using(var cts1 = new CancellationTokenSource(10 * 1000))
{
foreach(var h in Hubs)
{
var lcts1 = CancellationTokenSource.CreateLinkedTokenSource(cancellation, cts1.Token);
var h = Connect(h, lcts1.Token);
using(var cts2 = new CancellationTokenSource(10 * 1000))
{
var lcts2 = CancellationTokenSource.CreateLinkedTokenSource(cancellation, cts2.Token);
var lp = h.LocatePackage(package, lcts2.Token);
}
}
}
}
причем CancelAfter я не могу использовать потому что отмена по таймауту не долждна отменять всё, а только значить что я не мог подключиться к этому хабу и попробую другой
хотя... вроде можно так:
void Get(CancellationToken cancellation)
{
using(var cts1 = new CancellationTokenSource())
{
var lcts1 = CancellationTokenSource.CreateLinkedTokenSource(cancellation, cts1.Token);
foreach(var h in Hubs)
{
lcts.CancelAfter(10 * 1000);
var h = Connect(h, lcts1.Token);
lcts.CancelAfter(10 * 1000);
var lp = h.LocatePackage(package, lcts1.Token);
}
}
}
Я изъездил эту страну вдоль и поперек, общался с умнейшими людьми и я могу вам ручаться в том, что обработка данных является лишь причудой, мода на которую продержится не более года. (с) Эксперт, авторитет и профессионал из 1957 г.