Следующий код является частью гораздо более крупного проекта, но это все, что нужно показать, чтобы проиллюстрировать мою проблему.
Я использую subprocess.run для выполнения программы C, которая обрабатывает волновой файл. Проблема в том, что subprocess.run не возвращается из своего выполнения до тех пор, пока модуль C не завершит свое выполнение. Как видно из сопровождающего вывода, время до запуска subprocess.run составляет 24,3 секунды. Время до возврата из модуля C составляет 25 секунд. Время после возврата subprocess.run составляет 36,9 секунды. Учитывая примерно 1 секунду выполнения модуля C, время до возврата из subprocess.run составляет 11,5 секунд. Это происходит независимо от любого другого кода, который я запускаю в более крупном проекте.
Что делает subprocess.run в течение 11,5 секунд и как мне избавиться от этой задержки?
#!/usr/bin/env python3
import time
import subprocess
from datetime import datetime
cmd_args = ['/home/wa4ywm/gr-ft8_rxtx/KGOBA/ft8_lib-master/decode_ft8', '/home/wa4ywm/gr-ft8_rxtx/python/FT8_wavefile.wav']
now = float(datetime.now().strftime('%S.%f'))
print ("Before ft8_decode = ", now)
ft8_decode = subprocess.run(cmd_args, capture_output=True)
ft8_decode = ft8_decode.stdout.decode('utf-8')
print("\n" + ft8_decode)
now = float(datetime.now().strftime('%S.%f'))
print ("After ft8_decode = ", now)
Вот результат, показывающий время:
wa4ywm@raspberrypi:~/gr-ft8_rxtx/python $ python3 test.py
Before ft8_decode = 24.282739
Time before return = Sun Jan 19 13:52:25 2025
After ft8_decode = 36.900071
Подробнее здесь: https://stackoverflow.com/questions/793 ... r-too-long
Python subprocess.run работает слишком долго ⇐ Python
Программы на Python
-
Anonymous
1737324140
Anonymous
Следующий код является частью гораздо более крупного проекта, но это все, что нужно показать, чтобы проиллюстрировать мою проблему.
Я использую subprocess.run для выполнения программы C, которая обрабатывает волновой файл. Проблема в том, что subprocess.run не возвращается из своего выполнения до тех пор, пока модуль C не завершит свое выполнение. Как видно из сопровождающего вывода, время до запуска subprocess.run составляет 24,3 секунды. Время до возврата из модуля C составляет 25 секунд. Время после возврата subprocess.run составляет 36,9 секунды. Учитывая примерно 1 секунду выполнения модуля C, время до возврата из subprocess.run составляет 11,5 секунд. Это происходит независимо от любого другого кода, который я запускаю в более крупном проекте.
Что делает subprocess.run в течение 11,5 секунд и как мне избавиться от этой задержки?
#!/usr/bin/env python3
import time
import subprocess
from datetime import datetime
cmd_args = ['/home/wa4ywm/gr-ft8_rxtx/KGOBA/ft8_lib-master/decode_ft8', '/home/wa4ywm/gr-ft8_rxtx/python/FT8_wavefile.wav']
now = float(datetime.now().strftime('%S.%f'))
print ("Before ft8_decode = ", now)
ft8_decode = subprocess.run(cmd_args, capture_output=True)
ft8_decode = ft8_decode.stdout.decode('utf-8')
print("\n" + ft8_decode)
now = float(datetime.now().strftime('%S.%f'))
print ("After ft8_decode = ", now)
Вот результат, показывающий время:
wa4ywm@raspberrypi:~/gr-ft8_rxtx/python $ python3 test.py
Before ft8_decode = 24.282739
Time before return = Sun Jan 19 13:52:25 2025
After ft8_decode = 36.900071
Подробнее здесь: [url]https://stackoverflow.com/questions/79369635/python-subprocess-run-running-far-too-long[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия