Используйте группу процессов , чтобы включить отправку сигнала ко всему процессу в группах. Для этого вы должны прикрепить session id к родительскому процессу процессов порожденного / дочернего процесса, который является оболочкой в вашем случае. Это сделает его лидером группы процессов. Итак, теперь, когда сигнал отправляется руководителю группы процессов, он передается всем дочерним процессам этой группы.
Вот код:
import os
import signal
import subprocess
# The os.setsid() is passed in the argument preexec_fn so
# it's run after the fork() and before exec() to run the shell.
pro = subprocess.Popen(cmd, stdout=subprocess.PIPE,
shell=True, preexec_fn=os.setsid)
os.killpg(os.getpgid(pro.pid), signal.SIGTERM) # Send the signal to all the process groups
Эти предупреждения появляются из-за того, что вы используете ruby 2.4.0.
Эта версия внесла это изменение: Унифицировать Fixnum и Bignum в Integer
См. здесь для объявления: https://www.ruby-lang.org/en/news/2016/12/25/ruby-2-4-0-released/
Предупреждения взяты из драгоценного камня activesupport, который является частью рельсов и будет исправлен в предстоящем выпуске.
На данный момент вы можете просто игнорировать эти предупреждения.
Обновление: Rails 5.0.2 был выпущен , который избавляется от предупреждений.
Предполагаю, что вы используете Rails 5? Проверьте эту ссылку (внизу). Похоже, что эти предупреждения уйдут с выпуском № 27458.
Если эти предупреждения об отказе в активной поддержке являются единственными предупреждениями, которые вы видите, вы можете их отбросить, передав переменную basyOPT bash с параметром -W0, который будет отключен.
, поэтому вместо rails server
try: RUBYOPT="-W0" rails server
или RUBYOPT="-W0" bin/rails server
В рельсах 5.0 вы можете привыкнуть использовать bin / rails не только рельсы, так как это глобальная версия рельсов, которая может быть или не быть одинаковой как ваша локальная версия рельсов.
Я исправил мою, обновив рельсы
bundle update rails
bundle update geocoder
Получая следующую ошибку снова, прямо перед запуском консоли rails: /home/moi/.rvm/gems/ruby-2.4.0/gems/geo-distance-0.2.2/lib/geo-distance/core_ext.rb:13: warning: constant ::Fixnum is deprecated
– Ethan Wilkins
30 May 2017 в 19:27
ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-darwin16]
, но также получаю эту проблему. – aircraft 26 January 2017 в 15:39