mirror of
				https://github.com/godotengine/godot.git
				synced 2025-10-30 21:21:10 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			30 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
| <?xml version="1.0" encoding="UTF-8" ?>
 | |
| <class name="Semaphore" inherits="Reference" version="3.2">
 | |
| 	<brief_description>
 | |
| 		A synchronization semaphore.
 | |
| 	</brief_description>
 | |
| 	<description>
 | |
| 		A synchronization semaphore which can be used to synchronize multiple [Thread]s. Initialized to zero on creation. Be careful to avoid deadlocks. For a binary version, see [Mutex].
 | |
| 	</description>
 | |
| 	<tutorials>
 | |
| 		<link>https://docs.godotengine.org/en/3.2/tutorials/threads/using_multiple_threads.html</link>
 | |
| 	</tutorials>
 | |
| 	<methods>
 | |
| 		<method name="post">
 | |
| 			<return type="int" enum="Error">
 | |
| 			</return>
 | |
| 			<description>
 | |
| 				Lowers the [Semaphore], allowing one more thread in. Returns [constant OK] on success, [constant ERR_BUSY] otherwise.
 | |
| 			</description>
 | |
| 		</method>
 | |
| 		<method name="wait">
 | |
| 			<return type="int" enum="Error">
 | |
| 			</return>
 | |
| 			<description>
 | |
| 				Tries to wait for the [Semaphore], if its value is zero, blocks until non-zero. Returns [constant OK] on success, [constant ERR_BUSY] otherwise.
 | |
| 			</description>
 | |
| 		</method>
 | |
| 	</methods>
 | |
| 	<constants>
 | |
| 	</constants>
 | |
| </class>
 | 
