PHP выходит из бесконечного цикла вне цикла [дубликат]

Другим случаем, когда NullReferenceExceptions может случиться, является (неправильное) использование оператора as :

class Book {
    public string Name { get; set; }
}
class Car { }

Car mycar = new Car();
Book mybook = mycar as Book;   // Incompatible conversion --> mybook = null

Console.WriteLine(mybook.Name);   // NullReferenceException

Здесь Book и Car являются несовместимыми типами; a Car не может быть преобразован / передан в Book. Когда этот сбой завершается неудачно, as возвращает null. Используя mybook после этого, вы вызываете NullReferenceException.

В общем случае вы должны использовать cast или as, как показано ниже:

Если вы ожидаете преобразования типа в всегда преуспевает (т. е. вы знаете, какой объект должен быть впереди времени), тогда вы должны использовать cast:

ComicBook cb = (ComicBook)specificBook;

Если вы не уверены в типе, но хотите попробовать , чтобы использовать его как определенный тип, затем используйте as:

ComicBook cb = specificBook as ComicBook;
if (cb != null) {
   // ...
}

15
задан LouwHopley 23 September 2011 в 10:12
поделиться

3 ответа

убить процесс. предполагая, что вы можете получить доступ к консоли через ssh, и ваш сервер работает в linux:

ps -ef | grep php // to get a list of php-processes

kill [process-id] // kill the process by process-id
13
ответ дан oezi 26 August 2018 в 05:21
поделиться

Я вошел в систему через SSH и попытался убить процесс, но он, похоже, не работал - возможно, неправильный процесс, так как там было немало.

Вы всегда можете перезапустить apache как последнее средство ; это исправит, -)

1
ответ дан Friendly Code 26 August 2018 в 05:21
поделиться

Возможно, вы захотите связаться со своим хостингом и попросить их убить ваш скрипт. Скорее всего, у вас нет доступа к выполнению или ssh-доступа. Возможно, вы должны создать возможность выйти из своей программы при следующем создании бесконечного цикла.

1
ответ дан Snicksie 26 August 2018 в 05:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: