1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 __maintainer__ = 'Lionel Martin <lionel@fluendo.com>'
18 __maintainer2__ = 'Florian Boucault <florian@fluendo.com>'
19
20 import threading
21
23 """
24 Thread-safe subclass of the built-in type list.
25 """
26
30
32 try:
33 self._lock.acquire()
34 r = (self == other)
35 finally:
36 self._lock.release()
37 return r
38
40 try:
41 self._lock.acquire()
42 r = list.__len__(self)
43 finally:
44 self._lock.release()
45 return r
46
48 try:
49 self._lock.acquire()
50 r = list.__getitem__(self, rank)
51 finally:
52 self._lock.release()
53 return r
54
61
68
70
71
72
73 try:
74 self._lock.acquire()
75 r = list.__iter__(self)
76 finally:
77 self._lock.release()
78 return r
79
81 try:
82 self._lock.acquire()
83 r = list.__contains__(self, item)
84 finally:
85 self._lock.release()
86 return r
87
89 try:
90 self._lock.acquire()
91 list.append(self, element)
92 finally:
93 self._lock.release()
94
95 - def count(self, element):
96 try:
97 self._lock.acquire()
98 r = list.count(self, element)
99 finally:
100 self._lock.release()
101 return r
102
103 - def index(self, element):
104 try:
105 self._lock.acquire()
106 r = list.index(self, element)
107 finally:
108 self._lock.release()
109 return r
110
112 try:
113 self._lock.acquire()
114 list.extend(self, elements)
115 finally:
116 self._lock.release()
117
118 - def insert(self, position, element):
124
125 - def pop(self, position=-1):
126 try:
127 self._lock.acquire()
128 r = list.pop(self, position)
129 finally:
130 self._lock.release()
131 return r
132
134 try:
135 self._lock.acquire()
136 list.remove(self, element)
137 finally:
138 self._lock.release()
139
141 try:
142 self._lock.acquire()
143 list.reverse(self)
144 finally:
145 self._lock.release()
146
147 - def sort(self, key=None):
153
155 try:
156 self._lock.acquire()
157 r = list.__add__(self, operand)
158 finally:
159 self._lock.release()
160 return r
161
163 try:
164 self._lock.acquire()
165 r = list.__iadd__(self, operand)
166 finally:
167 self._lock.release()
168 return r
169
171 try:
172 self._lock.acquire()
173 r = list.__mul__(self, coefficient)
174 finally:
175 self._lock.release()
176 return r
177
179 try:
180 self._lock.acquire()
181 r = list.__imul__(self, coefficient)
182 finally:
183 self._lock.release()
184 return r
185
187 try:
188 self._lock.acquire()
189 r = list.__getslice__(self, i, j)
190 finally:
191 self._lock.release()
192 return r
193
200
207
209
210 raise NotImplementedError
211
213
214 raise NotImplementedError
215