.NET 4.0: Как очистить ссылки на объекты, относящиеся к threadstatic, после того, как поток был обнаружен? - PullRequest
1 голос
/ 20 октября 2011

У меня есть статическая переменная соединения в коде веб-формы ASP.NET. В событии загрузки страницы я выполняю несколько методов в отдельных потоках. Каждый поток использует потоковый экземпляр этого объекта соединения. Что я хочу сделать, так это в событии dispose страницы очистить все статические экземпляры этой одной переменной подключения одновременно. Если это невозможно, тогда мне просто нужно будет закрыть соединения в конце каждого метода, но я бы хотел обработать все это в одной строке кода, если это возможно.

1 Ответ

1 голос
/ 20 октября 2011

Это не реально сделать в одной строке кода. Событие Dispose страницы выполняется в определенном потоке и, следовательно, имеет доступ только к одному из экземпляров значения ThreadStatic.

Вам нужно распоряжаться каждым экземпляром в конце каждого созданного потока, который использует значение.

...