On 4 April 2018 at 08:27, Steven D'Aprano
<steve+comp.lang.pyt...@pearwood.info> wrote:
> "Asynchronous programming has been gaining a lot of traction in the past
> few years, and for good reason. Although it can be more difficult than
> the traditional linear style, it is also much more efficient."
>
> I can agree with the first part of the first sentence (gaining a lot of
> traction), and the first part of the second sentence (more difficult than
> the traditional style), but the second part? Asynchronous processing is
> *more efficient*?

I'd need to know what "efficient" meant. Obviously you're never going
to get more than 100% utilisation of a single core with async (because
of the GIL) but I can easily imagine async making more complete use of
that core by having less time spent waiting for I/O. Whether you
describe that as "more efficient" use of the CPU, or something else, I
don't know.

Honestly, that paragraph reads more like sales blurb than anything
else, so I'd be inclined to take it with a pinch of salt anyway. IMO,
async has proved useful for handling certain types of IO bound
workloads with lower overheads[1] than traditional multi-threaded or
multi-process designs. Whether it's a good fit for any particular
application is something you'd have to test, as with anything else.

Paul

[1] I found it really hard to avoid saying "more efficiently" there.
Not sure what that implies other than that the phrase means whatever
you want it to mean!!!
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to