Castro-Fidel / PortWINE

MIT License
487 stars 35 forks source link

Use pw_stop_progress_bar with array #406

Closed Htylol closed 3 weeks ago

Htylol commented 4 weeks ago

1) Оставил только один pw_stop_progress_bar, остальное дропнул. PW_YAD_PID_PROGRESS_BAR_BLOCK используется одна переменная, все остальные пиды попадают в неё в качестве элементов массива sleep был важен, добавил его $(sleep 0.02) и проверку на существование пида [[ -f /proc/$pid/exe ]] (то есть он не выйдет из цикла до того периода времени, пока пида не станет, то есть не убьет его

0.02 секунд ему достаточно, чтобы убиться. Дебажил, в цикл добавлял echo и смотреть сколько раз он его сделает, при 0.02 делает 1 раз, при 0.01 2 раза (то есть kill пропускает pid, но цикл заставляет его снова кильнуть), при 0.0000001 sleep, бывало и до 5-6 пропусков, но в итоге всё равно килял и выходил из цикла То есть, если даже при 0.02 пропустит, то снова в цикл зайдёт, чтобы убить pid

p.s. был момент снова с этим pw_find_exe, то что бар не убился )))

2) Добавил --pulsate к --progress бару для yad