Home >Web Front-end >HTML Tutorial >Advantages and Disadvantages of asyncio

Advantages and Disadvantages of asyncio

php中世界最好的语言
php中世界最好的语言Original
2017-11-27 15:05:493593browse

Today I will give you the advantages and disadvantages of asyncio. To learn asynchronous IO, you must know coroutines and asynico. So what exactly is asyncio? How to use asyncio? Let me give you the answers one by one

Advantages

Exceptionally easy to use for asynchronous IO tasks

ProgrammingModel Easier and less burdensome:

Use asyncio to get an event loop

Then stuff things (coroutines) into this loop

The operating system sees It is still single-threaded, but from a macro perspective, what we see is "multiple concurrency" (every language is almost like this: implementing a multi-threaded model in user mode)

Disadvantages

The ecology is immature (although there is aio-libs), it would be great if libraries like requests also have corresponding implementations (the popularity must be high)

There is a premise: an App must be from front to back Asynchronous, which is burdensome for many historical legacy projects

Comparison with gevent + Python 2

Many projects are based on Python 2, and the effect of using gevent is obvious

The only worry is: gevent will have a lot of patches (hack standard library), and what we see is a black box, so we are inevitably worried

The efficiency of gevent is not necessarily better than asyncio + Async def is inefficient.

How to use

asyncio as our framework(I prefer what the standard library has), async def/await as Basic design methods

Use various libs in aio-libs (it must be asynchronous from beginning to end!)

I believe you have mastered the method after reading these cases, more exciting Please pay attention to other related articles on php Chinese website!


Related reading:

How to deal with CSS web page misalignment

How to use css3 Make an icon effect

How to use canvas to realize the interaction between the ball and the mouse

The above is the detailed content of Advantages and Disadvantages of asyncio. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn