Закрыть listening порт

153
30 октября 2019, 13:00

Мне нужно закрывать listening порт(например, 12000, который создается java методом serversocket.accept) в определённый момент(неизвестно когда он наступит). Вариант "убивать процесс, создавший порт" - не подходит, процесс должен оставаться живым. Вариант с таймером для serversocket.accept тоже не подходит - необходимо в общем случае держать до подключения, и лишь в конкретных ситуациях вырубать таковой порт. Подойдёт отключение методами java(необходимо учесть, что вырубать этот порт необходимо из отличного от создавшего такой сокет потока), либо через командную строку windows.

Answer 1

Чем плоха наивная реализация?

class ListenerThread extends Thread
{
    private ServerSocket serverSocket;
    public void enable() throws IOException
    {
        serverSocket = new ServerSocket(1337);
        start();
    }
    public void disable() throws IOException
    {
        serverSocket.close();
        interrupt();
    }
    @Override
    public void run()
    {
        try
        {
            serverSocket.accept();
        }
        catch (IOException ex)
        {
            ex.printStackTrace();
        }
    }
}
Answer 2
netsh advfirewall firewall add rule name="Block12000" protocol=TCP dir=in localport=12000 action=block
READ ALSO
“Failed to instantiate java.util.List using constructor NO_CONSTRUCTOR with arguments ”

“Failed to instantiate java.util.List using constructor NO_CONSTRUCTOR with arguments ”

Вызов данного контроллера выдает ошибку:

260
Tomcat не запускает проект

Tomcat не запускает проект

Запускаю этот проект через Tomcat https://githubcom/CaymanJava/online_banking

135
Как узнать что в микрофон что то говорят

Как узнать что в микрофон что то говорят

Сейчас я использую вот такой методМожет есть более хорошие методы?

132
Почему не применяются правки в CSS [закрыт]

Почему не применяются правки в CSS [закрыт]

Сделал себе сайт на WP, чуть допиленный чужой шаблонМеняю CSS а сайт абсолютно не меняет вид

150