php页面中有一函数,function mem(),a.php   b.php   c.php 页面会用到此函数,
现需:三个页面不能同时访问此函数,这应该如何实现呀,

解决方案 »

  1.   

    可以同时访问同一函数,除非你这个函数去调API、数据库之类的,导致卡死,那你就要用队列
      

  2.   

    thanks
    二楼的,队列如何用?
      

  3.   


    这是个好方法,在使用之前检查被调用文件是否正在被使用flock
      

  4.   

    但是还有个问题,你是想这种效果是针对全部用户还是单个用户?如果是全部用户就使用文件锁,如果是单个用户就使用session或者cookie来保存使用状态
      

  5.   

    这样好一点吧:
    比如建一个txt配置文件
    函数开头向txt写入0
    函数结尾修改0为1在函数开始的时候(写入之前),读取txt,如果为0的话,就返回false,反之正常运行下去
      

  6.   

    $sem_id = sem_get(0791); //建信号量id
    $shmid = get_memory_shmid(0791);
    sem_acquire($sem_id);  //信号量流程开始
    ....
    sem_release($sem_id); //信息号释放