За последние 24 часа нас посетили 22876 программистов и 1268 роботов. Сейчас ищут 855 программистов ...

Цикл while и ssh2 соединение. (Segmentation fault (core dumped))

Тема в разделе "Прочие вопросы по PHP", создана пользователем Naykon, 29 фев 2020.

  1. Naykon

    Naykon Активный пользователь

    С нами с:
    15 ноя 2015
    Сообщения:
    65
    Симпатии:
    0
    Код (Text):
    1. while(1)
    2. {
    3.     $connect = ssh2_connect($ip, 22);
    4.     ssh2_fingerprint($connect);
    5.     ssh2_auth_password($connect,$user,$pass);
    6.     $sftp = ssh2_sftp($connect);
    7.     $handle = opendir("ssh2.sftp://".intval($sftp));
    8.    
    9.     //Обрабатываем полученные данные...
    10.     $files = array();
    11.     while (false != ($entry = readdir($handle)))
    12.         $files[] = $entry;
    13.     //Закончили свои дела.
    14.    
    15.    
    16.     ssh2_exec($connect, 'exit');
    17.     sleep(300); //Ждем 5 минут и повторяем операцию.
    18. }
    После первого запуска скрипта все работает отлично, но на 2 итерацию во время выполнения:
    $handle = opendir("ssh2.sftp://".intval($sftp)); получаем ошибку //Segmentation fault (core dumped)

    1 итерация:
    ssh2_connect вернул - Resource id #4
    ssh2_auth_password вернул - 1
    ssh2_sftp вернул - Resource id #5

    2 итерация:
    ssh2_connect вернул - Resource id #8
    ssh2_auth_password вернул - 1
    ssh2_sftp вернул - Resource id #9

    Почему скрипт не хочет работать 2 раз как сработал первый раз после старта?
     
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.752
    Симпатии:
    1.322
    Адрес:
    Лень
  3. Naykon

    Naykon Активный пользователь

    С нами с:
    15 ноя 2015
    Сообщения:
    65
    Симпатии:
    0