我正在编写一个多线程应用程序。我的工作线程从环境对象获取连接,如下所示:
//EnterCriticalSection(&cs);
conn = env->createConnection(username, password, connStr);
//LeaveCriticalSection(&cs);
对于并发性,是否应该在关键部分创建连接?环境需要吗?为什么?
感谢。
答案 0 :(得分:2)
如果createConnection
是线程安全的,那么您不需要它。
如果createConnection
不是线程安全的,那么您确实需要关键部分。
请参阅您的文档,看它是否是线程安全的。如果它没有明确说它是线程安全的,那么它们就可以安全地将它包装在一个关键部分。
编辑:当然,以上所有假设多个线程将调用createConnection
。如果他们不是,那么显然你根本不需要关键部分。