Поврежденный канал больше не заканчивает программы?

Я искал встроенное решение и смог скомпилировать ниже ответ Дмитрия:

public static String sha256_hash(string value)
{
    return (System.Security.Cryptography.SHA256.Create()
            .ComputeHash(Encoding.UTF8.GetBytes(value))
            .Select(item => item.ToString("x2")));
}
5
задан PypeBros 24 September 2008 в 11:24
поделиться

3 ответа

Спасибо за Ваши советы решение становится ближе...

Согласно странице справочника tcsh, "оболочки невхода в систему наследовали оконечное поведение от своих родителей. Другие сигналы имеют значения который оболочка, наследованная от ее родителя".

Которые предполагают, что мой терминал является на самом деле корнем проблемы..., если это проигнорировало SIGPIPE, сама оболочка проигнорирует SIGPIPE также...

править: у меня есть категорическое подтверждение, что проблема только возникает с Eterm+tcsh и нашла подозрительно недостающий сигнал (SIGPIPE, SIG_DFL) в исходном коде Eterm. Я думаю, что закрывают случай.

0
ответ дан 13 December 2019 в 22:19
поделиться

Ну, если существует попытка записать в канал после того, как читатель ушел, сигнал SIGPIPE сгенерирован. Приложение имеет способность поймать этот сигнал, но если это не делает, процесс уничтожается.

SIGPIPE не будет сгенерирован, пока обработка вызовов не пытается записать, поэтому если там больше не будет произведен, то это не будет сгенерировано.

8
ответ дан 13 December 2019 в 22:19
поделиться

Имеет, "делают что-то интенсивное" изменилось вообще?

Поскольку Daniel упомянул, что SIGPIPE не является волшебством "Ваш канал, ушел" сигнал, а скорее "хорошая попытка, Вы больше не можете чтение-запись тот канал" сигнал.

Если Вы имеете контроль над, "делают что-то интенсивное", Вы могли бы изменить его для выписывания некоторого вывода "индикатора хода выполнения", поскольку это вращается. Это повысило бы SIGPIPE своевременно.

2
ответ дан 13 December 2019 в 22:19
поделиться
Другие вопросы по тегам:

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