当前位置: 首页>>代码示例>>PHP>>正文


PHP SmrMySqlDatabase::lock方法代码示例

本文整理汇总了PHP中SmrMySqlDatabase::lock方法的典型用法代码示例。如果您正苦于以下问题:PHP SmrMySqlDatabase::lock方法的具体用法?PHP SmrMySqlDatabase::lock怎么用?PHP SmrMySqlDatabase::lock使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SmrMySqlDatabase的用法示例。


在下文中一共展示了SmrMySqlDatabase::lock方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: SmrMySqlDatabase

// *
// ***********************************
// debug the death
$debug = false;
// assume yes for now
$container["continue"] = "Yes";
// new db object to avoid interfearance with other db-objects
$dead_ppl = new SmrMySqlDatabase();
// we need to enter the loop at least once
$result = true;
// with a while loop we have to pick up only one result row from the db query
// do all our work (so over threads have the ability to pick up other rows)
// then lock table again to pic up another row
while ($result) {
    // lock kills table for the whole process
    $dead_ppl->lock("kills");
    // pick one random row we are going to process
    $dead_ppl->query("SELECT *\n\t\t\t\t\t  FROM kills\n\t\t\t\t\t  WHERE game_id = {$player->game_id} AND\n\t\t\t\t\t  processed = 'FALSE'\n\t\t\t\t\t  ORDER BY rand()\n\t\t\t\t\t  LIMIT 1\n\t\t\t\t\t ");
    // did we get one result?
    if ($dead_ppl->next_record()) {
        // get their id's
        $killed_id = $dead_ppl->f("dead_id");
        $killer_id = $dead_ppl->f("killer_id");
        $curr_sector = $dead_ppl->f("sector_id");
        $dead_exp = $dead_ppl->f("dead_exp");
        $kill_exp = $dead_ppl->f("kill_exp");
        // we have to set the 'process' column to true here
        // BEFORE we give access free to that table.
        // otherwise another thread could pick this row up
        // but we cannot delte the entry before we sent that poor guy back to his hq
        $db->query("UPDATE kills SET processed = 'TRUE' WHERE game_id = {$player->game_id} AND dead_id = {$killed_id} AND killer_id = {$killer_id}");
开发者ID:smrealms,项目名称:smrv2.0,代码行数:31,代码来源:trader_attack_processing.php


注:本文中的SmrMySqlDatabase::lock方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。