Soquete desalocado do Linux?

Soquete desalocado do Linux?

Estou escrevendo um aplicativo de rede e estou enfrentando um pequeno incômodo. Tenho que esperar um período entre os testes, pois meu programa servidor, mesmo depois de fechado ainda tem a porta que estou usando "alocada" para ele. Além disso, isso torna a depuração muito difícil, já que não consigo dizer o que está causando o problema com o qual estou lidando.

Para fins de teste, existe uma maneira de liberar portas TCP e UDP?

Responder1

Em seu programa python, você precisa chamar as funções shutdown e close do soquete para que o sistema operacional saiba que seu programa não o está mais usando e desalocará o soquete se nada estiver sendo usado depois de chamar essas funções. Se você não conseguir chamar essas funções quando o programa for encerrado, você terá que esperar que o sistema operacional limpe os soquetes alocados obsoletos. Mesmo se você forçar o encerramento do aplicativo, pois o sistema operacional ainda não tem como saber explicitamente que ele não está sendo usado. Então, quando um programa morre e não fecha o soquete corretamente, o SO irá mantê-lo alocado por um tempo, até fazer a verificação para ver se realmente está sendo usado, e se não estiver, então o desaloca para uso por outros programas.

Aqui está um link que explicará as funções de desligamento e fechamento de soquetes em python. Então responde

informação relacionada