mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 13:41:24 +00:00 
			
		
		
		
	__enter__ and __exit__ must be on the class
This commit is contained in:
		
							parent
							
								
									382ccdfd5b
								
							
						
					
					
						commit
						eb88cb8cd4
					
				
					 1 changed files with 12 additions and 4 deletions
				
			
		|  | @ -58,8 +58,12 @@ def _after_fork(obj): | ||||||
|     def _make_methods(self): |     def _make_methods(self): | ||||||
|         self.acquire = self._semlock.acquire |         self.acquire = self._semlock.acquire | ||||||
|         self.release = self._semlock.release |         self.release = self._semlock.release | ||||||
|         self.__enter__ = self._semlock.__enter__ | 
 | ||||||
|         self.__exit__ = self._semlock.__exit__ |     def __enter__(self): | ||||||
|  |         return self._semlock.__enter__() | ||||||
|  | 
 | ||||||
|  |     def __exit__(self, *args): | ||||||
|  |         return self._semlock.__exit__(*args) | ||||||
| 
 | 
 | ||||||
|     def __getstate__(self): |     def __getstate__(self): | ||||||
|         assert_spawning(self) |         assert_spawning(self) | ||||||
|  | @ -181,11 +185,15 @@ def __setstate__(self, state): | ||||||
|          self._woken_count, self._wait_semaphore) = state |          self._woken_count, self._wait_semaphore) = state | ||||||
|         self._make_methods() |         self._make_methods() | ||||||
| 
 | 
 | ||||||
|  |     def __enter__(self): | ||||||
|  |         return self._lock.__enter__() | ||||||
|  | 
 | ||||||
|  |     def __exit__(self, *args): | ||||||
|  |         return self._lock.__exit__(*args) | ||||||
|  | 
 | ||||||
|     def _make_methods(self): |     def _make_methods(self): | ||||||
|         self.acquire = self._lock.acquire |         self.acquire = self._lock.acquire | ||||||
|         self.release = self._lock.release |         self.release = self._lock.release | ||||||
|         self.__enter__ = self._lock.__enter__ |  | ||||||
|         self.__exit__ = self._lock.__exit__ |  | ||||||
| 
 | 
 | ||||||
|     def __repr__(self): |     def __repr__(self): | ||||||
|         try: |         try: | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Benjamin Peterson
						Benjamin Peterson