Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 未在google chrome webrtc内部清除RTPeerConnection_Javascript_Webrtc_Rtcpeerconnection - Fatal编程技术网

Javascript 未在google chrome webrtc内部清除RTPeerConnection

Javascript 未在google chrome webrtc内部清除RTPeerConnection,javascript,webrtc,rtcpeerconnection,Javascript,Webrtc,Rtcpeerconnection,我正在我的项目中使用webrtc。但当rtpeerconnection.iceConnectionState='closed'未从浏览器中删除时(Google Chrome 67.0.3396.99) 我使用了rtpeerconnection.close(),之后我将连接对象设置为null。但它仍然在chrome://webrtc-internals/。问题是,我的应用程序中可能有太多的连接,因此当连接未清除时,我无法在一段时间后创建任何新连接。它在我的应用程序中显示了太多的连接错误。有人能帮我

我正在我的项目中使用webrtc。但当
rtpeerconnection.iceConnectionState='closed'
未从浏览器中删除时(Google Chrome 67.0.3396.99)

我使用了
rtpeerconnection.close()
,之后我将连接对象设置为
null
。但它仍然在chrome://webrtc-internals/。问题是,我的应用程序中可能有太多的连接,因此当连接未清除时,我无法在一段时间后创建任何新连接。它在我的应用程序中显示了太多的连接错误。有人能帮我解决这个问题吗


感谢

对于webrtc,您应该使用websocket服务器,默认情况下浏览器只允许每个客户端的连接数量有限,这不是服务器限制,而是浏览器限制


另外,您可能会看到
rtpeerconnection.iceConnectionState='closed'
,因为您需要构建信令服务器,否则webrtc不会打开连接,websocket是构建信令服务器的常用解决方案,

对于webrtc,您应该使用websocket服务器,默认情况下,浏览器只允许限制每个客户端的连接数量,这不是服务器限制,而是浏览器限制


另外,您可能会看到
rtpeerconnection.iceConnectionState='closed'
,因为您需要构建一个信令服务器,或者更明智的webrtc不会打开连接,WebSocket是构建信令服务器的一个非常常用的解决方案,

这是我一直关注的Chrome中一个长期存在的问题
RTPeerConnection
不要及时收集垃圾。我注意到,随着时间的推移,尤其是在选项卡之间切换时,
rtpeerconnection
最终会被垃圾回收

限制似乎是500个连接,所以尽量限制你的连接数量

以下是一些引用此错误的链接:

编辑:


黑客解决方案可能是在iframe中创建连接。我记得当iframe被删除时,连接是GC的。

这是我一直关注的Chrome中的一个长期问题
RTPeerConnection
不要及时收集垃圾。我注意到,随着时间的推移,尤其是在选项卡之间切换时,
rtpeerconnection
最终会被垃圾回收

限制似乎是500个连接,所以尽量限制你的连接数量

以下是一些引用此错误的链接:

编辑:


黑客解决方案可能是在iframe中创建连接。我记得当iframe被删除时,连接是GC的。

我想这是一个功能,可以让你在以后检查连接


当我关闭或重新加载具有连接的选项卡时,它们似乎会立即被删除。可能与Eric Guan提到的iframe技巧起作用的原因相同。

我想这是一个功能,可以让你在事后检查连接


当我关闭或重新加载具有连接的选项卡时,它们似乎会立即被删除。可能与Eric Guan提到的iframe技巧起作用的原因相同。

当我要关闭连接时,它仍然显示在chrome浏览器的webrtc内部。我的问题是,即使将其设置为null并停止所有引用,它仍然显示关闭的连接。我需要一个解决方案,该解决方案将关闭webrtc的RTPeerConnection,并在我关闭后立即将其从浏览器webrtc内部删除。您需要通过信令服务器发送webrtc数据,您可以使用信令服务器,也可以使用WebSocket构建自己的,根据您的问题,当我要关闭连接时,您似乎只运行webrtc客户端,但它仍然显示在chrome浏览器的webrtc内部。我的问题是,即使将其设置为null并停止所有引用,它仍然显示关闭的连接。我想要一个解决方案,该解决方案将关闭webrtc的RTPeerConnection,并在我关闭它后将其从浏览器webrtc内部删除。您需要通过信令服务器发送webrtc数据,您可以使用信令服务器,或者使用WebSocket构建自己的连接,根据您的问题,您似乎只运行webrtc客户端