+ // The second parameter for "sem_acquire" doesn't exist before 5.6.1
+ if (function_exists('sem_get') && version_compare(PHP_VERSION, '5.6.1', '>=')) {
+ self::$semaphore[$fn_name] = sem_get(self::semaphoreKey($fn_name));
+ if (self::$semaphore[$fn_name]) {
+ return sem_acquire(self::$semaphore[$fn_name], ($timeout == 0));
+ }
+ }
+
+ $memcache = self::connectMemcache();