0
如果你把這個代碼的短位:爲什麼sshtunnel阻止SIGINT關閉我的python應用程序?
import sshtunnel
# The IP of any system with an SSH server on port 22
ip = "localhost"
print "Connecting to ssh..."
with sshtunnel.open_tunnel(ip, ssh_username="test",
ssh_password="test",
remote_bind_address=("1.2.3.4", 23)) as server:
print "SSH connected"
print "SSH Closed"
設置「IP」變量設置爲端口22上運行的SSH服務器的任何系統,運行代碼,並嘗試用Ctrl + C中斷它就在它打印出「Connecting to ssh ...」之後,它會給你回溯並凍結(不退出)。 什麼阻止它?
如果我使用PyCharm運行上面的代碼,和一個KeyboardInterrupt後暫停(當它凍結在等待什麼),它似乎停止在這一行中packet.py: 'x = self .__ socket.recv(n)'。 packet.py似乎是一個paramiko模塊。這對任何人都有意義嗎?這是sshtunnel圖書館,還是paramiko應該處理得更好?或者我做錯了什麼? – Tal
似乎與此相關:https://github.com/paramiko/paramiko/issues/520。我會盡力調查。 – Tal