首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

大家帮忙.多实例多线程数据库,该怎么解决

2012-03-05 
大家帮忙...多实例多线程数据库我的SOCKET服务端需要操作数据库服务端工作情况是这样的:用一个SOCKET侦听

大家帮忙...多实例多线程数据库
我的SOCKET     服务端需要操作数据库    
服务端工作情况是这样的:        
 
用一个SOCKET     侦听        
如果连接进来就重新生成一个SOCEKT     实例    
 
这样就有多个实例    
我想在每个实例里对数据库进行操作而且可以是对一张表操作    
我想知道这样的多实例    
是不是像多线程一样有可能会多个实例同一时间对一张表进行操作...    
 
或者我程序中有一个变量     多个实例是不是也有可能像多线程一样    
有同一时间访问这个变里的可能....    
如果有该怎么解决..    
我用的是MFC CSOCKET类    
 
还有
vc   连接池是怎么建立的
是不是自己弄一个链表...然后建立几个数据库连接放到链表里
用的时候去链表里取....
数据库是SQLSERVER   其他数据库怎么建立希望大家也说一下
谢了.....

大家帮忙啊!!!!    


[解决办法]
如果你用了线程同步的技术``就不会```
比如楼主担心会多个实例访问同一张表,那么就给每一张表都定个变量,然后当有用户访问的时候`先判断这个判断对应的变量有没有锁定,没有`就锁定这个变量,并让这个用户访问,这样其他用户就必须等待了``
我也没用过连接池``不过大意就是自己维护几个连接
[解决办法]
SQL Server本身就有同步机制啊。
[解决办法]
线程内的同步``用EVENT就很好用了`相关函数SetEvent,ReSetEvent
[解决办法]
你说的多线程,用数据库内置支持的锁定机制就可以了

至于连接池,其实就是在服务器每次访问完数据库以后,并不关闭连接,而是保持连接,下次接着用

热点排行