Desidero memorizzare le informazioni di contesto di registrazione in TLS in modo che sia possibile impostare un valore nel punto di ingresso e avere il valore disponibile in tutti gli stack risultanti. Funziona bene, ma uso anche TPL e ThreadPool. Il problema diventa quindi come migrare i dati TLS negli altri thread. Posso fare tutto da solo, ma poi perdo metodi carini come Parallel. Per.Come gestire Thread Local Storage (TLS) quando si utilizza TPL?
C'è un modo per copiare TLS quando si utilizza TPL? Ciò si applica anche a C# quando ottiene la funzione Attendi.
Grazie, Erick
Grazie Reed - questo fa quello che volevo, tuttavia ho trovato un modo diverso per affrontare il problema. Tuttavia, questa è roba eccellente che userò presto. –
Mi chiedo perché hanno incluso un brutto sovraccarico? A quel ritmo sarebbe più pulito solo per inizializzare i dati locali del thread e deinitializzarli nel delegato principale. A meno che non lo abbiano perf-ottimizzato ..? –
@ TimLovell-Smith I dati locali del thread vengono riutilizzati in più chiamate delegate, pertanto non possono essere inizializzati/finalizzati all'interno di un singolo delegato. (Questo è il punto;)) –