Ejemplo n.º 1
0
 public function __construct($name = '')
 {
     if (!extension_loaded("sysvsem") || !extension_loaded("sysvshm") || !extension_loaded("sysvmsg")) {
         throw new Hush_Process_Exception("You need to open sysv* extensions");
         return false;
     }
     // get global queue name
     $this->name = get_class($this);
     // get queue id from name
     $this->name .= '_' . $name;
     $this->qid = Hush_Util::str_hash($this->name);
     // init msg queue
     if (!($this->queue = msg_get_queue($this->qid, 0666))) {
         throw new Hush_Message_Exception("Queue " . $this->name . " create failed");
         return false;
     }
 }
Ejemplo n.º 2
0
 /**
  * Get string or key's hash code
  * @param string $s
  * @return int
  */
 private function __hashcode($s)
 {
     $base = ftok(__FILE__, 'r');
     $code = $base + Hush_Util::str_hash($s);
     return $code ? $code : $base;
 }
Ejemplo n.º 3
0
 /**
  * Get string or key's hash code
  * @param string $s
  * @return int
  */
 private function __hashcode($s)
 {
     $code = $this->ftbr + Hush_Util::str_hash($s);
     return $code ? $code : $this->ftbr;
 }