Stomp::__destruct

stomp_close

(PECL stomp >= 0.1.0)

Stomp::__destruct -- stomp_closeCloses stomp connection

说明

面向对象风格 (destructor):

public Stomp::__destruct()

过程化风格:

stomp_close(resource $link): bool

Closes a previously opened connection.

参数

link

仅对过程化样式:由 stomp_connect() 返回的 stomp 连接标识符。

返回值

成功时返回 true, 或者在失败时返回 false

示例

See stomp_connect().

添加备注

用户贡献的备注 2 notes

up
0
szasz dot attila at microsec dot hu
8 months ago
Be careful, the lib does not send a DISCONNECT frame on destruction. Therefore the sessions will outlive the instance, accumulating in Artemis servers!
up
0
vanja at removethis dizyart period com
6 years ago
Isn't it a little odd to have connect/disconnect in the constructor/destructor methods? I have a case where the connection is presumably kept alive until the PHP process ends:<?phpclass MyStompWrapper {    public function doSend()    {        $stomp = $this->connect(); // returns Stomp Object        $stomp->send('/destination', 'message', []);        $this->disconnect($stomp);        // $stomp still exists in this scope, hence, the connection is alive    }    private function disconnect(\Stomp $stompObj)    {        // only unsets the local $stomp pointer, does not actually disconnect        unset($stomp);    }    private function connect():\Stomp    {        // try-catch block omitted for example brevity        return new Stomp('url', 'username', 'password');    }}?>This means that, in order to handle disconnecting, I have to create and destroy the Stomp object within the same scope.
To Top