X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Flock.php;h=64f6319ef1990aba4f30e2a67b75e829f84cd8a3;hb=9f62dd8627a118da9c4968964484ab530ebb0a39;hp=0c7b6acaa4afbaa45c440fccb194399ea60539d2;hpb=23cef0936ffb5dcf7cdfb0d61e4bad575d45a23e;p=friendica.git diff --git a/include/lock.php b/include/lock.php index 0c7b6acaa4..64f6319ef1 100644 --- a/include/lock.php +++ b/include/lock.php @@ -2,9 +2,9 @@ // Provide some ability to lock a PHP function so that multiple processes // can't run the function concurrently -if(! function_exists('lock_function')) { +if (! function_exists('lock_function')) { function lock_function($fn_name, $block = true, $wait_sec = 2, $timeout = 30) { - if( $wait_sec == 0 ) + if ( $wait_sec == 0 ) $wait_sec = 2; // don't let the user pick a value that's likely to crash the system $got_lock = false; @@ -16,14 +16,15 @@ function lock_function($fn_name, $block = true, $wait_sec = 2, $timeout = 30) { dbesc($fn_name) ); - if((dbm::is_result($r)) AND (!$r[0]['locked'] OR (strtotime($r[0]['created']) < time() - 3600))) { + if ((dbm::is_result($r)) AND (!$r[0]['locked'] OR (strtotime($r[0]['created']) < time() - 3600))) { q("UPDATE `locks` SET `locked` = 1, `created` = '%s' WHERE `name` = '%s'", dbesc(datetime_convert()), dbesc($fn_name) ); $got_lock = true; } - elseif(! dbm::is_result($r)) { // the Boolean value for count($r) should be equivalent to the Boolean value of $r + elseif (! dbm::is_result($r)) { + /// @TODO the Boolean value for count($r) should be equivalent to the Boolean value of $r q("INSERT INTO `locks` (`name`, `created`, `locked`) VALUES ('%s', '%s', 1)", dbesc($fn_name), dbesc(datetime_convert()) @@ -33,10 +34,10 @@ function lock_function($fn_name, $block = true, $wait_sec = 2, $timeout = 30) { q("UNLOCK TABLES"); - if(($block) && (! $got_lock)) + if (($block) && (! $got_lock)) sleep($wait_sec); - } while(($block) && (! $got_lock) && ((time() - $start) < $timeout)); + } while (($block) && (! $got_lock) && ((time() - $start) < $timeout)); logger('lock_function: function ' . $fn_name . ' with blocking = ' . $block . ' got_lock = ' . $got_lock . ' time = ' . (time() - $start), LOGGER_DEBUG); @@ -44,30 +45,32 @@ function lock_function($fn_name, $block = true, $wait_sec = 2, $timeout = 30) { }} -if(! function_exists('block_on_function_lock')) { +if (! function_exists('block_on_function_lock')) { function block_on_function_lock($fn_name, $wait_sec = 2, $timeout = 30) { - if( $wait_sec == 0 ) + if ( $wait_sec == 0 ) $wait_sec = 2; // don't let the user pick a value that's likely to crash the system $start = time(); do { $r = q("SELECT locked FROM locks WHERE name = '%s' LIMIT 1", - dbesc($fn_name) - ); + dbesc($fn_name) + ); - if (dbm::is_result($r) && $r[0]['locked']) + if (dbm::is_result($r) && $r[0]['locked']) { sleep($wait_sec); + } - } while(dbm::is_result($r) && $r[0]['locked'] && ((time() - $start) < $timeout)); + } while (dbm::is_result($r) && $r[0]['locked'] && ((time() - $start) < $timeout)); return; }} -if(! function_exists('unlock_function')) { +if (! function_exists('unlock_function')) { function unlock_function($fn_name) { - $r = q("UPDATE `locks` SET `locked` = 0, `created` = '0000-00-00 00:00:00' WHERE `name` = '%s'", + $r = q("UPDATE `locks` SET `locked` = 0, `created` = '%s' WHERE `name` = '%s'", + dbesc(NULL_DATE), dbesc($fn_name) );