История изменений
Исправление snake266, (текущая версия) :
Во-первых, используй макросы usocket, они для того и написаны чтобы меньше путаться
Хмм, в документации такого не нашел, так понимаю надо смотреть непосредственно исходный код?
Откуда ты взял это :EOF? Оно по какой причине должно материализоваться?
Честно признаться увидел в одной из тем на SO. Сначала использовал обычный nil
Это это тут после блокирующего read-line?
read-line
блокирующий? Я вот сегодня с утра пришел к выводу, что socket-accept
блокирующий. read-line
блокирует выполнение пока в stream что-то не окажется?
Зачем тебе цикл тогда?
Добавил, когда сидел и последовательно запускал клиентов и смотрел, что это работает. Потом захотел добавить какую-то проверку если сокет со стороны клиента закрылся.
Блокирующие системные вызовы оно не прерывает. И вообще к SLY меньше документации итп, оно чаще глючит чем SLIME, и если ноль в этом вопросе, лучше начать со SLIME.
Спасибо, попробую. Использовал SLY потому что его по дефолту предлагает Doom Emacs – вот и подумал, что альтернатива вполне себе готовая.
Вот работающее решение
Спасибо! Буду изучать.
Исправление snake266, :
Во-первых, используй макросы usocket, они для того и написаны чтобы меньше путаться
Хмм, в документации такого не нашел, так понимаю надо смотреть непосредственно исходный код?
Откуда ты взял это :EOF? Оно по какой причине должно материализоваться?
Честно признаться увидел в одной из тем на SO. Сначала использовал обычный nil
Это это тут после блокирующего read-line?
read-line
блокирующий? Я вот сегодня с утра пришел к выводу, что socket-accept
блокирующий. read-line
блокирует выполнение пока в stream что-то не окажется?
Зачем тебе цикл тогда?
Добавил, когда сидел и последовательно запускал клиентов и смотрел, что это работает. Потом захотел добавить какую-то проверку если сокет со стороны клиента закрылся.
Блокирующие системные вызовы оно не прерывает. И вообще к SLY меньше документации итп, оно чаще глючит чем SLIME, и если ноль в этом вопросе, лучше начать со SLIME.
Спасибо, попробую. Использовал SLY потому что его по дефолту предлагает Doom Emacs – вот и подумал, что альтернатива вполне себе готовая.
Вот работающее решение
Спасибо! Буду изучать.
Исходная версия snake266, :
Во-первых, используй макросы usocket, они для того и написаны чтобы меньше путаться
Хмм, в документации такого не нашел, так понимаю надо смотреть непосредственно исходный код?
Откуда ты взял это :EOF? Оно по какой причине должно материализоваться?
Честно признаться увидел в одной из тем на SO. Сначала использовал обычный nil
Это это тут после блокирующего read-line?
read-line
блокирующий? Я вот сегодня с утра пришел к выводу, что socket-accept
блокирующий. read-line
блокирует выполнение пока в stream не что-то окажется?
Зачем тебе цикл тогда?
Добавил, когда сидел и последовательно запускал клиентов и смотрел, что это работает. Потом захотел добавить какую-то проверку если сокет со стороны клиента закрылся.
Блокирующие системные вызовы оно не прерывает. И вообще к SLY меньше документации итп, оно чаще глючит чем SLIME, и если ноль в этом вопросе, лучше начать со SLIME.
Спасибо, попробую. Использовал SLY потому что его по дефолту предлагает Doom Emacs – вот и подумал, что альтернатива вполне себе готовая.
Вот работающее решение
Спасибо! Буду изучать.