Asynchronní programování

Asynchronní programování  je koncept programování , který spočívá v tom, že výsledek provedení funkce není k dispozici okamžitě, ale po nějaké době ve formě nějakého asynchronního (porušujícího normální pořadí provádění) volání.

Na rozdíl od synchronního programování, kde počítač provádí instrukce sekvenčně a čeká na dokončení systémových operací (přístup k I/O zařízením , pevný disk , síťový požadavek ) blokováním dalších operací v prováděcím vláknu , v asynchronním programování jsou dlouhotrvající operace spouštěny bez čekání na jejich dokončení a bez blokování dalšího provádění programu [1] [2] .

Použití asynchronního programovacího kódu uvolní vlákno provádění, ze kterého byl spuštěn, což vede k úspoře zdrojů [2] a také poskytuje možnost paralelního počítání . Asynchronní programování se používá k optimalizaci vysoce zatížených aplikací s častým čekáním systému [1] . Pro uživatele programů GUI poskytuje asynchronní programování rychlou odezvu [3] . Pro serverové aplikace poskytuje asynchronní programování více příležitostí pro škálovatelnost ve srovnání se synchronním [3] .

Asynchronní programovací modely existují v mnoha moderních programovacích jazycích , jako je C# [4] [5] [3] , JavaScript [6] , ASP.NET [7] [8] , Python [9] [10] [11] a ostatní .

Poznámky

  1. 1 2 Taťána Valerievna Lyubimová. Asynchronie v programování  // Univerzitní věda. - 2019. - Vydání. 2(8) . — ISSN 2500-2724 .
  2. 1 2 Alex Davis. Asynchronní programování v C# 5.0 . — Litry, 2022-01-12. — 122 s. — ISBN 978-5-457-42681-8 . Archivováno 18. ledna 2022 na Wayback Machine
  3. 1 2 3 Cleary Stephen. Konkurenceschopnost v C#. Asynchronní, paralelní a vícevláknové programování. 2. int. vyd. . — "Nakladatelství" "Piter""", 2020-03-04. — 304 s. - ISBN 978-5-4461-1572-3 . Archivováno 18. ledna 2022 na Wayback Machine
  4. Sergej Vladimirovič Tepljakov. Asynchronní programování v C# 5  // Rsdn Magazine. - 2010. - Vydání. 4 . — ISSN 0234-6621 .
  5. Davis A. Asynchronní programování v C # 5.0 // M .: DMK Press. — 2013.
  6. S. A. Sidorov. ASYNCHRONNÍ PROGRAMOVÁNÍ V JavaScriptu . - 2019. - S. 272-275 .
  7. Sorokin A. A., Belyanina D. N. ASYNCHRONNÍ PROGRAMOVÁNÍ V ASP .NET MVC 4 // Naděžda Anatoljevna Lebedeva – doktorka filozofie v oblasti kultury. - S. 20 . Získáno 16. ledna 2022. Archivováno z originálu dne 7. března 2022.
  8. D. N. Kurova. Asynchronní zpracování požadavků v ASP.NET  // Bulletin Dimitrovgrad Institute of Engineering and Technology. - 2015. - Vydání. 3(8) .
  9. Savostin Petr Alekseevič, Efremová Natalja Ernestovna. Praktická aplikace asynchronního programování v Pythonu pomocí balíčku asyncio  // Programové systémy a výpočetní metody. - 2018. - Vydání. 2 . — S. 11–16 . Archivováno z originálu 18. ledna 2022.
  10. Elena Vasilievna Feshina, Dmitrij Aleksandrovič Omelchenko, Ruslan Gennadievich Gonataev. Multithreading a asynchronie v programovacím jazyce Python  // Innovations. Věda. Vzdělání. - 2021. - Vydání. 28 .
  11. Tolstikova A. V., Miroshnichenko I. S., Kotsyur A. B. Efektivita použití programování asynchronních aplikací v Pythonu // Problémy informatizace a správy. - 2016. - svazek 1. - č. 53. - S. 72-77.

Bibliografie