PHP Conference Japan 2024

Stomp::__destruct

stomp_close

(PECL stomp >= 0.1.0)

Stomp::__destruct -- stomp_close关闭 stomp 连接

描述

面向对象风格(析构函数)

public Stomp::__destruct()

过程式风格

stomp_close(资源 $link): 布尔值

关闭之前打开的连接。

参数

link

仅过程式风格:由 stomp_connect() 返回的 stomp 连接标识符。

返回值

成功时返回 true,失败时返回 false

范例

参见 stomp_connect()

添加注释

用户贡献的注释 2 条注释

szasz dot attila at microsec dot hu
9 天前
小心,库在销毁时不会发送 DISCONNECT 帧。因此,会话将超出实例的生命周期,并在 Artemis 服务器中累积!
vanja at removethis dizyart period com
6 年前
在构造函数/析构函数方法中使用 connect/disconnect 有点奇怪吗?
我有一个案例,其中连接可能保持活动状态,直到 PHP 进程结束

<?php
class MyStompWrapper {
public function
doSend()
{
$stomp = $this->connect(); // 返回 Stomp 对象
$stomp->send('/destination', 'message', []);
$this->disconnect($stomp);
// $stomp 仍然存在于此作用域中,因此,连接处于活动状态
}

private function
disconnect(\Stomp $stompObj)
{
// 仅取消设置本地 $stomp 指针,实际上并不断开连接
unset($stomp);
}

private function
connect():\Stomp
{
// 为简洁起见,省略了 try-catch 块
return new Stomp('url', 'username', 'password');
}
}
?>

这意味着,为了处理断开连接,我必须在相同的作用域内创建和销毁 Stomp 对象。
To Top