Update in README.
Trimmed down the shared memory block size.
This commit is contained in:
		
							parent
							
								
									be444f3b45
								
							
						
					
					
						commit
						a5b5a58d06
					
				@ -1,10 +1,12 @@
 | 
				
			|||||||
# joopschilder/php-async
 | 
					# joopschilder/php-async
 | 
				
			||||||
Asynchronous PHP callable processing with return values via SysV shared memory.<br/>
 | 
					Asynchronous PHP callable processing with return values via SysV shared memory.<br/>
 | 
				
			||||||
Requires the `php-sysvshm` extension.<br/>
 | 
					Requires the `php-sysvshm` extension.<br/>
 | 
				
			||||||
Works with PHP >= 5.3 due to `shm_attach(...)` returning a resource instead of an int.<br/>
 | 
					Works with PHP >= 5.3 due to `shm_attach(...)` returning a resource instead of an int.<br/><br/>
 | 
				
			||||||
 | 
					<b>Note:</b> This package should not be used in a CGI environment, as each PHP runtime that makes a call on the async functions WILL
 | 
				
			||||||
 | 
					create an 8MB shared memory block in RAM. If you run out of memory: you have been warned.
 | 
				
			||||||
<br/>
 | 
					<br/>
 | 
				
			||||||
<b>Note:</b> This project is merely an experiment. It is, however, available on packagist.
 | 
					<b>Note:</b> This project is an experiment. It is, however, available on packagist.
 | 
				
			||||||
If you think your project lacks witchcraft combined with black magic, just add this package to your `composer.json`:
 | 
					If you think your project lacks witchcraft and black magic, just add this package to your `composer.json`:
 | 
				
			||||||
```json
 | 
					```json
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    "require": {
 | 
					    "require": {
 | 
				
			||||||
 | 
				
			|||||||
@ -8,7 +8,7 @@ namespace JoopSchilder\Asynchronous;
 | 
				
			|||||||
 */
 | 
					 */
 | 
				
			||||||
class Asynchronous
 | 
					class Asynchronous
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
	public const BLOCK_SIZE_MB = 32;
 | 
						public const BLOCK_SIZE_MB = 8;
 | 
				
			||||||
	private const BLOCK_SIZE_BYTES = self::BLOCK_SIZE_MB * (1024 ** 2);
 | 
						private const BLOCK_SIZE_BYTES = self::BLOCK_SIZE_MB * (1024 ** 2);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/** @var Asynchronous|null */
 | 
						/** @var Asynchronous|null */
 | 
				
			||||||
@ -75,7 +75,7 @@ class Asynchronous
 | 
				
			|||||||
		 * On failure, write a default response to the block in order for
 | 
							 * On failure, write a default response to the block in order for
 | 
				
			||||||
		 * the Promise to be able to resolve.
 | 
							 * the Promise to be able to resolve.
 | 
				
			||||||
		 */
 | 
							 */
 | 
				
			||||||
		Runtime::setChild();
 | 
							Runtime::markChild();
 | 
				
			||||||
		$instance->_attachToShm();
 | 
							$instance->_attachToShm();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		try {
 | 
							try {
 | 
				
			||||||
 | 
				
			|||||||
@ -20,30 +20,12 @@ class Runtime
 | 
				
			|||||||
	/**
 | 
						/**
 | 
				
			||||||
	 *
 | 
						 *
 | 
				
			||||||
	 */
 | 
						 */
 | 
				
			||||||
	public static function setChild()
 | 
						public static function markChild()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		self::$inParentRuntime = false;
 | 
							self::$inParentRuntime = false;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	/**
 | 
					 | 
				
			||||||
	 *
 | 
					 | 
				
			||||||
	 */
 | 
					 | 
				
			||||||
	public static function setParent()
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		self::$inParentRuntime = true;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	/**
 | 
					 | 
				
			||||||
	 * @return bool
 | 
					 | 
				
			||||||
	 */
 | 
					 | 
				
			||||||
	public static function isParent()
 | 
					 | 
				
			||||||
	{
 | 
					 | 
				
			||||||
		return self::$inParentRuntime;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	/**
 | 
						/**
 | 
				
			||||||
	 * @return bool
 | 
						 * @return bool
 | 
				
			||||||
	 */
 | 
						 */
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user