Popen.wait ()

Popen.wait ( timeout=None )

ΠžΠΆΠΈΠ΄Π°Π΅Ρ‚, ΠΏΠΎΠΊΠ° Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ процСсс Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡΡ. УстанавливаСт ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Popen.returncode.

Если процСсс Π½Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ послС истСчСния timeout сСкунд, Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ TimeoutExpired. Π­Ρ‚ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ бСзопасно ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅.

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ Π²Π·Π°ΠΈΠΌΠ½ΠΎΠΉ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅ ΠΏΡ€ΠΈ использовании stdout = PIPE ΠΈΠ»ΠΈ stderr = PIPE, ΠΈ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ процСсс Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ достаточно Π²Ρ‹Π²ΠΎΠ΄Π° для ΠΊΠ°Π½Π°Π»Π°, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠ΅, ΠΏΠΎΠΊΠ° Π±ΡƒΡ„Π΅Ρ€ ΠΊΠ°Π½Π°Π»Π° ОБ Π½Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ‚ большС Π΄Π°Π½Π½Ρ‹Ρ…. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Popen.communicate () ΠΏΡ€ΠΈ использовании ΠΊΠ°Π½Π°Π»ΠΎΠ², Ρ‡Ρ‚ΠΎΠ±Ρ‹ этого ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ.

Ѐункция Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° с использованиСм Ρ†ΠΈΠΊΠ»Π° занятости (Π½Π΅Π±Π»ΠΎΠΊΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π²Ρ‹Π·ΠΎΠ² ΠΈ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠ΅ засыпания). Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ asyncio для асинхронного оТидания: см. asyncio.create_subprocess_exec.

ИзмСнСно Π² вСрсии 3.3: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ timeout.

Last updated