mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Use an RLock in the completion worker, just in case
This commit is contained in:
parent
496e98b7ae
commit
51c4ee2343
@ -7,7 +7,7 @@ __license__ = 'GPL v3'
|
|||||||
__copyright__ = '2014, Kovid Goyal <kovid at kovidgoyal.net>'
|
__copyright__ = '2014, Kovid Goyal <kovid at kovidgoyal.net>'
|
||||||
|
|
||||||
import cPickle, os, sys
|
import cPickle, os, sys
|
||||||
from threading import Thread, Event, Lock
|
from threading import Thread, Event, RLock
|
||||||
from Queue import Queue
|
from Queue import Queue
|
||||||
from contextlib import closing
|
from contextlib import closing
|
||||||
from collections import namedtuple
|
from collections import namedtuple
|
||||||
@ -37,7 +37,7 @@ class CompletionWorker(Thread):
|
|||||||
self.current_completion_request = None
|
self.current_completion_request = None
|
||||||
self.latest_completion_request_id = None
|
self.latest_completion_request_id = None
|
||||||
self.request_count = 0
|
self.request_count = 0
|
||||||
self.lock = Lock()
|
self.lock = RLock()
|
||||||
|
|
||||||
def launch_worker_process(self):
|
def launch_worker_process(self):
|
||||||
from calibre.utils.ipc.server import create_listener
|
from calibre.utils.ipc.server import create_listener
|
||||||
@ -159,6 +159,7 @@ class CompletionWorker(Thread):
|
|||||||
self.worker_process.kill()
|
self.worker_process.kill()
|
||||||
return self.worker_process.returncode
|
return self.worker_process.returncode
|
||||||
|
|
||||||
|
|
||||||
_completion_worker = None
|
_completion_worker = None
|
||||||
|
|
||||||
|
|
||||||
@ -175,6 +176,7 @@ def run_main(func):
|
|||||||
with closing(Client(address, authkey=key)) as control_conn, closing(Client(address, authkey=key)) as data_conn:
|
with closing(Client(address, authkey=key)) as control_conn, closing(Client(address, authkey=key)) as data_conn:
|
||||||
func(control_conn, data_conn)
|
func(control_conn, data_conn)
|
||||||
|
|
||||||
|
|
||||||
Result = namedtuple('Result', 'request_id ans traceback query')
|
Result = namedtuple('Result', 'request_id ans traceback query')
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user