1
我想在多線程中使用一個套接字連接到MongoDB。如何用pymongo 3只用一個套接字連接到MongoDB?
#-*- encoding:UTF-8 -*-
import datetime
import threading
import time
import pymongo
conn = pymongo.Connection('mongodb://127.0.0.1', auto_start_request=False)
class MyThread(threading.Thread):
def run(self):
print conn['fvck'].damnit.count(), datetime.datetime.now(), self.getName()
time.sleep(10)
with conn.start_request():
for i in range(100):
MyThread().start()
該代碼只有一個套接字,PyMongo的版本是2.2rc。
Citing the documentation for PyMongo 3:
的
connect
選項被添加。的
start_request
,in_request
,和end_request
方法被去除,如 還有auto_start_request
選項。
copy_database
方法被刪除,請參閱copy_database examples 替代方法。
MongoClient.disconnect()
方法被刪除;它是close()
的同義詞。
client = pymongo.MongoClient("127.0.0.1", 27017, connect=False)
布爾connect
不起作用。