Немножко вне рутины...
Ответ, по-моему, очевиден: нет.
-----
Хммм... Я бы не был столь категоричен.
Или скажем по-другому - мне нельзя быть столь категоричным. Просто потому, что надо сделать.
Одним из вариантов решения будет сделать поток статическим. Но этот вариант меня не устраивает,
т.к. пора перебираться из однопоточной задачи в многопоточную.
Надо придумать что-то типа треад-статик вариабле... Что на 100% возможно.
Но там получается другая (см. внизу) сложность.
Изначально это делается чтобы сократить издержки на создание стреамов. Они - неприемлемо высокие.
Первоначально Я сделал пулл потоков и подставлял стреам из пула когда его запрашивали.
Относительно начальной схемы, где стреамы создавалось локально, все существенно ускорилось.
Пулл был рамером в 120 стреамов. Больше 240 - не выдерживала ОСь. Возможно, что можно что-то
подстроить (см Филес в конфиге), но проблема не в этом - там была однозадачная система. А мне сейчас
нужно иметь параллельность выполнения. При параллельном выполнении количество задействованных
стреамов очень быстро достигнет предела. Каким бы предел ни был. Т.е. это не вариант.
Так что остается только контролировать количество исполняемых треадов и гарантировать что
в треаде используется один стреам. И этот стреам надо как-то шарить между Бешками.
А упомянутая выше сложность заключается в том, что треад не умеет (ну или Я не умею) возвратить
стреам в пулл по завершении потока. А создавать его каждый раз внутри потока - накладно...