ДЛВ Хьюго просто висит

Я пытаюсь выучить Хьюго с помощью отладчика Go dlv, И я довольно застрял. После:

go get -v github.com/gohugoio/hugo
cd $GOPATH/src/github.com/gohugoio/hugo
go  build -gcflags="-N -l"
dlv exec ./hugo -- -s /path/to/the/projectdir

Это висит. Нажатие Ctrl+C запускает hugo как обычно. Насколько я вижу dlv debug не только производит то же самое поведение, но это точно то же самое: произведенный двоичный файл называется debug точно такой же, как hugo Я построил с go build -gcflags="-N -l",

dlv запускает несколько дочерних процессов, которые через некоторое время исчезают. hugo процесс виден через ps а также pidof hugo но strace -ppidof hugo`` сообщает strace: attach: ptrace(PTRACE_ATTACH, ...): No such proce, После проверки он все еще в списке ps, тот же pid. Я думаю, потому что это в t состояние, как оно отслеживается.

Как я мог тогда наблюдать за бегущим Хьюго?

3 ответа

Решение

Хм, не бывает для меня. подсказка dlv появляется сразу. Я на Fedora, регулярно использую Гюго в течение прошлой недели или около того.

$ dlv exec ./hugo -- --cleanDestinationDir -s /path/to/blog/root/
Type 'help' for list of commands.
(dlv) c

                   | EN  
+------------------+----+
  Pages            | 25  
  Paginator pages  |  0  
  Non-page files   |  0  
  Static files     | 11  
  Processed images |  0  
  Aliases          |  0  
  Sitemaps         |  1  
  Cleaned          |  0  

Total in 46 ms
Process 41032 has exited with status 0
$

Даааа и это подсистема Linux для Windows! Я никогда не думал, что это что-то изменит, но после ответа Джоны Б. "Я на Fedora" я попробовал это на коробке Debian, и это сработало. Я удивлен, потому что strace отлично работает на WSL (на самом деле инструкции github по заполнению отчета включают strace). Я подал эту ошибку.

Тот же опыт здесь. Однако он не зависает, просто требуется значительное время, чтобы получить приглашение dlv.

Проверьте использование вашей памяти (например, с помощью mpstat или vmstat, если вы работаете в Linux). У меня есть 16G основной памяти и 16G подкачки. Пока не получено приглашение dlv, почти вся моя память и значительный объем подкачки расходуются. Во время запуска любая играющая видео или музыка заикается и ПК практически не работает, пока dlv не будет готов.

Хьюго довольно большое приложение в этом отношении.

Другие вопросы по тегам