mirror of
https://github.com/python/cpython.git
synced 2025-11-01 18:51:43 +00:00
Issue #20400: Merge Tulip into Python: add the new asyncio.subprocess module
* Add a new asyncio.subprocess module * Add new create_subprocess_exec() and create_subprocess_shell() functions * The new asyncio.subprocess.SubprocessStreamProtocol creates stream readers for stdout and stderr and a stream writer for stdin. * The new asyncio.subprocess.Process class offers an API close to the subprocess.Popen class: - pid, returncode, stdin, stdout and stderr attributes - communicate(), wait(), send_signal(), terminate() and kill() methods * Remove STDIN (0), STDOUT (1) and STDERR (2) constants from base_subprocess and unix_events, to not be confused with the symbols with the same name of subprocess and asyncio.subprocess modules * _ProactorBasePipeTransport.get_write_buffer_size() now counts also the size of the pending write * _ProactorBaseWritePipeTransport._loop_writing() may now pause the protocol if the write buffer size is greater than the high water mark (64 KB by default)
This commit is contained in:
parent
153d97b24e
commit
915bcb0111
9 changed files with 434 additions and 50 deletions
|
|
@ -1179,14 +1179,6 @@ class EventLoopTestsMixin:
|
|||
calls.append(self.loop._run_once_counter)
|
||||
self.assertEqual(calls, [1, 3, 5, 6])
|
||||
|
||||
def test_granularity(self):
|
||||
granularity = self.loop._granularity
|
||||
self.assertGreater(granularity, 0.0)
|
||||
# Worst expected granularity: 1 ms on Linux (limited by poll/epoll
|
||||
# resolution), 15.6 ms on Windows (limited by time.monotonic
|
||||
# resolution)
|
||||
self.assertLess(granularity, 0.050)
|
||||
|
||||
|
||||
class SubprocessTestsMixin:
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue