File tree Expand file tree Collapse file tree 1 file changed +17
-12
lines changed
volcenginesdkarkruntime/_utils Expand file tree Collapse file tree 1 file changed +17
-12
lines changed Original file line number Diff line number Diff line change 11import asyncio
22import time
33import uuid
4+ import threading
45
56
67class _QuerySet (object ):
78 def __init__ (self ):
89 self ._items = list ()
910 self ._index = dict ()
11+ self ._lock = threading .Lock ()
1012
1113 def add (self , item : int ) -> None :
12- if item in self ._index :
13- return
14+ with self ._lock :
15+ if item in self ._index :
16+ return
1417
15- self ._items .append (item )
16- self ._index [item ] = len (self ._items ) - 1
18+ self ._items .append (item )
19+ self ._index [item ] = len (self ._items ) - 1
1720
1821 def remove (self , item : int ) -> None :
19- if item not in self ._index :
20- return
22+ with self ._lock :
23+ if item not in self ._index :
24+ return
2125
22- index = self ._index [item ]
23- self ._items [index ] = self ._items [- 1 ]
24- self ._index [self ._items [- 1 ]] = index
25- self ._items .pop ()
26- del self ._index [item ]
26+ index = self ._index [item ]
27+ self ._items [index ] = self ._items [- 1 ]
28+ self ._index [self ._items [- 1 ]] = index
29+ self ._items .pop ()
30+ del self ._index [item ]
2731
2832 def query (self , item : int ) -> int :
29- return self ._index [item ]
33+ with self ._lock :
34+ return self ._index [item ]
3035
3136
3237class ModelBreaker (object ):
You can’t perform that action at this time.
0 commit comments