TCP套接字服务器客户端连接fd会导致内存泄漏吗?

斯科特1028

我是否不需要关闭客户端套接字handle(conn),例如“ conn.close()”?

如果我运行多线程来处理客户端套接字fd(conn)。如果服务器运行时间过长,是否会导致内存泄漏?

如果client no调用conn.close(),服务器将不会关闭client socket fd吗?

以下是我的tcp-socket服务器代码:

# coding: utf-8

import socket
import os, os.path
import time

sockfile = "./communicate.sock"

if os.path.exists( sockfile ):
  os.remove( sockfile )

print "Opening socket..."

server = socket.socket( socket.AF_UNIX, socket.SOCK_STREAM )
server.bind(sockfile)
server.listen(5)

print "Listening..."
while True:
  conn, addr = server.accept()
  print 'accepted connection'
  while True: 
    data = conn.recv(1024)

    if not data:
        break
    else:
        print "-" * 20
        print data
        print "DONE" == data
        if "DONE" == data:
            # If I need to invoke conn.close() here?
            break
print "-" * 20
print "Shutting down..."

server.close()
os.remove( sockfile )
print "Done"
小凤李

根据文档close当套接字被垃圾回收时被调用。因此,如果您出于某种原因没有关闭它,则您的程序可能会很好。只要您的套接字对象确实被GC。

但是,作为标准做法,在完成代码处理后,必须关闭套接字或释放任何资源。

要在Python中管理套接字对象,请查看如何在Python中将套接字用作上下文管理器?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

iOS客户端使用套接字机制连接到服务器会导致“遇到流结束”

来自分类Dev

Java TCP 客户端/服务器套接字

来自分类Dev

服务器/客户端套接字连接

来自分类Dev

C#TCP套接字服务器客户端连接

来自分类Dev

TCP套接字服务器/客户端连接应使用哪个IP /端口?

来自分类Dev

客户端断开连接后,C 套接字 TCP 服务器出现故障

来自分类Dev

TCP套接字从多个顺序客户端转发到与服务器的单个持久套接字连接

来自分类Dev

Python 2.7.8:套接字-TCP套接字中的客户端服务器数据丢失

来自分类Dev

将客户端套接字与服务器套接字连接时出现问题

来自分类Dev

如何使服务器套接字广播到那里,并让客户端套接字检测并连接

来自分类Dev

PHP客户端套接字与C#套接字服务器的连接

来自分类Dev

C#Xamarin UWP / Android服务器-客户端套接字TCP无法正确连接

来自分类Dev

如何重用打开的客户端连接与服务器上的分叉子进程(TCP/IP 套接字)

来自分类Dev

如何从Android Tcp客户端套接字连接到具有公共IP的Java TCP服务器套接字?

来自分类Dev

Spring Integration和TCP服务器套接字-如何向客户端发送消息?

来自分类Dev

音频数据的TCP套接字通信-多个服务器到多个客户端

来自分类Dev

通过python中的TCP套接字在客户端-服务器之间发送文件?

来自分类Dev

在C ++中使用TCP套接字进行远程客户端和服务器通信

来自分类Dev

客户端-服务器套接字通信TCP / IP中的对象问题

来自分类Dev

通过python中的TCP套接字在客户端-服务器之间发送文件?

来自分类Dev

两个客户端无法在套接字客户端-服务器连接中互相交谈

来自分类Dev

客户端在套接字关闭服务器连接之前,客户端打印一半数据

来自分类Dev

Python套接字服务器/客户端编程

来自分类Dev

C客户端/服务器套接字错误

来自分类Dev

套接字编程-简单的客户端/服务器

来自分类Dev

客户端js上的套接字服务器?

来自分类Dev

Java客户端/服务器套接字问题

来自分类Dev

检查PHP套接字服务器中的断开连接客户端

来自分类Dev

客户端关闭连接时服务器套接字完成

Related 相关文章

  1. 1

    iOS客户端使用套接字机制连接到服务器会导致“遇到流结束”

  2. 2

    Java TCP 客户端/服务器套接字

  3. 3

    服务器/客户端套接字连接

  4. 4

    C#TCP套接字服务器客户端连接

  5. 5

    TCP套接字服务器/客户端连接应使用哪个IP /端口?

  6. 6

    客户端断开连接后,C 套接字 TCP 服务器出现故障

  7. 7

    TCP套接字从多个顺序客户端转发到与服务器的单个持久套接字连接

  8. 8

    Python 2.7.8:套接字-TCP套接字中的客户端服务器数据丢失

  9. 9

    将客户端套接字与服务器套接字连接时出现问题

  10. 10

    如何使服务器套接字广播到那里,并让客户端套接字检测并连接

  11. 11

    PHP客户端套接字与C#套接字服务器的连接

  12. 12

    C#Xamarin UWP / Android服务器-客户端套接字TCP无法正确连接

  13. 13

    如何重用打开的客户端连接与服务器上的分叉子进程(TCP/IP 套接字)

  14. 14

    如何从Android Tcp客户端套接字连接到具有公共IP的Java TCP服务器套接字?

  15. 15

    Spring Integration和TCP服务器套接字-如何向客户端发送消息?

  16. 16

    音频数据的TCP套接字通信-多个服务器到多个客户端

  17. 17

    通过python中的TCP套接字在客户端-服务器之间发送文件?

  18. 18

    在C ++中使用TCP套接字进行远程客户端和服务器通信

  19. 19

    客户端-服务器套接字通信TCP / IP中的对象问题

  20. 20

    通过python中的TCP套接字在客户端-服务器之间发送文件?

  21. 21

    两个客户端无法在套接字客户端-服务器连接中互相交谈

  22. 22

    客户端在套接字关闭服务器连接之前,客户端打印一半数据

  23. 23

    Python套接字服务器/客户端编程

  24. 24

    C客户端/服务器套接字错误

  25. 25

    套接字编程-简单的客户端/服务器

  26. 26

    客户端js上的套接字服务器?

  27. 27

    Java客户端/服务器套接字问题

  28. 28

    检查PHP套接字服务器中的断开连接客户端

  29. 29

    客户端关闭连接时服务器套接字完成

热门标签

归档