Здравствуйте, cipher, Вы писали:
C>Необходимо работать с базой данных из разных потоков. База данных MySql, подключаюсь через Connector.NET.Для каждого потока хочу создать своё подключение к базе данных (пишет в базу данных только один поток, остальные только читают), т.е. создаю объекты MySqlConnection для каждого потока. Обращение к базе данных идёт из разных функций, разных классов. Для этого я создал ряд статических функций. Для работы этих функций необходимо передавать соответствующие ссылки на объекты MySqlConnection. Передавать эти ссылки в качестве параметра неудобно из-за вложенности функций. Хотелось бы в рамках каждого потока в любом месте кода иметь доступ к объекту MySqlConnection данного потока, т.е. иметь глобальную переменную в рамках потока.
C>Как это сделать.
ThreadStaticAttribute:
class ConnectionHolder
{
[ThreadStatic]
private static IDbConnection connection;
public static IDbConnection Connection {
get {
if(connection == null) {
connection = …;
}//if
return connection;
}
}
}
... << RSDN@Home 1.2.0 alpha rev. 670>>
Now playing: «Тихо в лесу…»