SFTP выдает ошибку при отключении метода на Renci SFTPCLient? - PullRequest
0 голосов
/ 27 июня 2018

Я использую библиотеку Renci.ssh в своем консольном приложении .net для загрузки контента с защищенного FTP (SFTP). Все, что я делаю, это подключаюсь с помощью SFTPClient библиотеки Renci.ssh и загружаю контент, и после завершения загрузки я пытаюсь отключиться, используя тот же экземпляр SFTPClient, и приложение ведет себя немного странно. Иногда он не выдает никакой ошибки, иногда выдает «Клиент не подключен» или «Ошибка при подключении к чему-то, что не является Socket». Я не понимаю, почему приложение ведет себя странно.

Код:

try
        {
            ConnectionInfo conInfo = new PasswordConnectionInfo("********.com", username, password);
            using (SftpClient client=new SftpClient(conInfo))
            {
                client.Connect();
                Console.WriteLine("Connection before sleep: " + client.IsConnected);
                Thread.Sleep(10 * 1000);
                Console.WriteLine("Connection after sleep: " + client.IsConnected);
                client.Disconnect();
            }

        }
        catch (Exception ex)
        {
        }

StackTrace:

в System.Net.Sockets.Socket.Poll (микросекунды Int32, режим SelectMode) в Renci.SshNet.Extensions.CanWrite (сокет) в Renci.SshNet.Session.SendMessage (сообщение сообщения) в Renci.SshNet.Session .SendDisconnect (DisconnectReason reasonCode, String message) в Renci.SshNet.BaseClient.Disconnect () в TestSFTP.Program.Main (String [] args) в C: \ Users ********* \ TestSFTP \ TestSFTP \ Program.cs: строка 26

...