DebugClients/Python/DebugClientThreads.py

branch
jsonrpc
changeset 5132
a094eee9f862
parent 4831
bf53c06fa0fb
equal deleted inserted replaced
5131:889ed5ff7a68 5132:a094eee9f862
8 """ 8 """
9 9
10 import thread 10 import thread
11 import sys 11 import sys
12 12
13 from AsyncIO import AsyncIO
14 from DebugThread import DebugThread 13 from DebugThread import DebugThread
15 import DebugClientBase 14 import DebugClientBase
16 15
17 16
18 def _debugclient_start_new_thread(target, args, kwargs={}): 17 def _debugclient_start_new_thread(target, args, kwargs={}):
47 # Note: import threading here AFTER above hook, as threading cache's 46 # Note: import threading here AFTER above hook, as threading cache's
48 # thread._start_new_thread. 47 # thread._start_new_thread.
49 from threading import RLock 48 from threading import RLock
50 49
51 50
52 class DebugClientThreads(DebugClientBase.DebugClientBase, AsyncIO): 51 class DebugClientThreads(DebugClientBase.DebugClientBase):
53 """ 52 """
54 Class implementing the client side of the debugger. 53 Class implementing the client side of the debugger.
55 54
56 This variant of the debugger implements a threaded debugger client 55 This variant of the debugger implements a threaded debugger client
57 by subclassing all relevant base classes. 56 by subclassing all relevant base classes.
58 """ 57 """
59 def __init__(self): 58 def __init__(self):
60 """ 59 """
61 Constructor 60 Constructor
62 """ 61 """
63 AsyncIO.__init__(self)
64
65 DebugClientBase.DebugClientBase.__init__(self) 62 DebugClientBase.DebugClientBase.__init__(self)
66 63
67 # protection lock for synchronization 64 # protection lock for synchronization
68 self.clientLock = RLock() 65 self.clientLock = RLock()
69 66

eric ide

mercurial