Должен ли я поставить критический раздел при получении соединения из среды OCCI - PullRequest
0 голосов
/ 07 мая 2010

Я пишу многопоточное приложение.Мои рабочие потоки получают соединение от объекта среды следующим образом:

//EnterCriticalSection(&cs);
conn = env->createConnection(username, password, connStr);
//LeaveCriticalSection(&cs);

Для параллелизма должно ли соединение быть создано в критическом разделе или нет?Нужно ли это env?И почему?

Спасибо.

1 Ответ

2 голосов
/ 07 мая 2010

Если createConnection является поточно-ориентированным, то вам это не нужно.

Если createConnection не является поточно-ориентированным, тогда вам необходим критический раздел.

Обратитесь за консультациейвашей документации, чтобы увидеть, является ли она потокобезопасной или нет.Если он явно не говорит, что он потокобезопасен, они проигрывают его и помещают в критическую секцию.

Редактировать: Конечно, все вышеперечисленное предполагает, что несколько потоков будут вызывать createConnection.Если это не так, то, очевидно, вам вообще не понадобится критическая секция.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...