• Elvis Pranskevichus's avatar
    bpo-34872: Fix self-cancellation in C implementation of asyncio.Task (GH-9679) · 0c797a6a
    Elvis Pranskevichus yazdı
    The C implementation of asyncio.Task currently fails to perform the
    cancellation cleanup correctly in the following scenario.
    
        async def task1():
            async def task2():
                await task3     # task3 is never cancelled
    
            asyncio.current_task().cancel()
            await asyncio.create_task(task2())
    
    The actuall error is a hardcoded call to `future_cancel()` instead of
    calling the `cancel()` method of a future-like object.
    
    Thanks to Vladimir Matveev for noticing the code discrepancy and to
    Yury Selivanov for coming up with a pathological scenario.
    0c797a6a
Adı
Son kayıt (commit)
Son güncelleme
.azure-pipelines Loading commit data...
.github Loading commit data...
Doc Loading commit data...
Grammar Loading commit data...
Include Loading commit data...
Lib Loading commit data...
Mac Loading commit data...
Misc Loading commit data...
Modules Loading commit data...
Objects Loading commit data...
PC Loading commit data...
PCbuild Loading commit data...
Parser Loading commit data...
Programs Loading commit data...
Python Loading commit data...
Tools Loading commit data...
m4 Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.travis.yml Loading commit data...
CODE_OF_CONDUCT.rst Loading commit data...
LICENSE Loading commit data...
Makefile.pre.in Loading commit data...
README.rst Loading commit data...
aclocal.m4 Loading commit data...
config.guess Loading commit data...
config.sub Loading commit data...
configure Loading commit data...
configure.ac Loading commit data...
install-sh Loading commit data...
pyconfig.h.in Loading commit data...
setup.py Loading commit data...