Почему .exe отказывается останавливаться?

Dokku имеет то же основание, что и heroku.

Файловая система Heroku эфемерна, поэтому любые изменения в файловой системе будут жить только в последнем активном контейнере dokku, в котором запущено ваше приложение. Поэтому, когда вы нажимаете свой код, в основном, dokku создает новый контейнер с файлами вашего приложения, а затем заменяет его старым. То же самое происходит, когда вы закрываете или перезапускаете приложение.

Используя хранилище dokku, его можно заставить его работать, просто следуйте инструкциям этого руководства http://dokku.viewdocs.io/dokku~v0.7.2/advanced-usage/persistent-storage/ , но обратите внимание что вам придется использовать относительный путь ex. '/ app / storage' в вашем приложении, поэтому хранилище работает. Но по нашему опыту, после 1 года работы с приложениями dokku на prod, вы можете легко испортить файлы по таинственной причине того, как работает dokku.

Если вам действительно нужно хранить данные, я рекомендую использовать специальную службу хранения файлов, такую ​​как AWS S3, это очень дешево. Есть несколько драгоценных камней, которые вы можете использовать для хранения, которые могут легко помочь вам обрабатывать ваши файлы в S3, такие как papeclip, dragonfly, activestorage (если вы используете rails 5.2).

5
задан skaffman 25 February 2012 в 21:33
поделиться

6 ответов

Дочерние потоки не остановятся автоматически, если они не были конкретно установлены как фоновые потоки (т.е. с thread.IsBackground = true).

Править: Также возможно, что основной поток не завершается, когда форма закрывается (т.е. существует другой код, который установлен бежать близко, который не завершается).

12
ответ дан 18 December 2019 в 07:11
поделиться

Я нахожу полезным присоединить к рабочему процессу с отладчиком и нажать кнопку паузы. После этого я осмотрел бы окно Threads и видел бы то, что отслеживание стека делает для каждого из выполняющихся потоков. Окно потоков скрыто по умолчанию. Вот больше информации о том, как показать его и использовать ее:

http://msdn.microsoft.com/en-us/library/w15yf86f.aspx

6
ответ дан 18 December 2019 в 07:11
поделиться

Можно хотеть изучить проводник процесса. Это помогает закрыть программы, и это может просмотреть потоки программы и потенциально указать на Вас в правильном направлении того, где сделать, программа ведет себя.

2
ответ дан 18 December 2019 в 07:11
поделиться

Мое предположение было бы то, что все потоки не останавливаются. Обычно можно закончить задачу программа, и она остановится все же. Возможно, один поток держался за системный ресурс, который это более трудно выпустить.

Если можно получить отладочную сборку, запустить программу и после того, как из программы "выходят", нажмите кнопку паузы в окне отладки. В той точке можно просмотреть потоки и узнать, какой подвешивается. Для помощи необходимо назвать потоки, когда они создаются (это - дополнительный параметр в функции.Start),

2
ответ дан 18 December 2019 в 07:11
поделиться

На большей части frundamental уровня где-нибудь существует бесконечный цикл.

0
ответ дан 18 December 2019 в 07:11
поделиться

Действительно ли форма запуска является той, которая это закрывается для выхода из приложения? Если это не Вы, должен поместить Приложение. Выход () или Среда. Выход () в form.closed событии формы, которая закрывается в последний раз.

0
ответ дан 18 December 2019 в 07:11
поделиться
Другие вопросы по тегам:

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