Перейти к содержимому

Почему Rust не позволяет рекурсивно вызывать async-функции?

Semicolon

0:00 / 0:00

Почему Rust не позволяет рекурсивно вызывать async-функции?

2 335 просмотров · 14 ч назад
Semicolon
7,4 тыс. подписчиков
2 335 просмотров · 14 ч назад
Почему асинхронная функция не может рекурсивно вызывать саму себя в Rust? В этом видео мы рассмотрим ошибку E0733, как фьючерсы хранят своё состояние, почему рекурсивные фьючерсы имеют бесконечный размер и как Box::pin решает эту проблему. Мы также рассмотрим более старый подход с использованием Pin и Box, а также требование Send в Tokio. x: https://x.com/suryanox9 #rust #rustlang #programming #coding #softwareengineering #developer #developers #backenddevelopment #systemsprogramming #async #asyncprogramming #asynchronous #asyncrust #asyncawait #futures #future #rustfutures #rustasync #recursion #asyncrecursion #recursivefunctions #recursiveasync #rustrecursion #boxpin #pin #box #tokio #rusttokio #send #threading #concurrency #parallelism #memorymanagement #heapallocation #stackoverflow #infinitefilesize #typesystem #compiletime #compiler #rustcompiler #rustc #compilererrors #e0733 #e0072 #rusterrors #borrowchecker #ownership #memorysafety #typechecking #concretetypes #dynamicdispatch #dynfuture #traitobjects #traitbounds #lifetimes #lifetime #pinned #pinning #pinbox #heap #stack #heapmemory #stackmemory #lowlevel #lowlevelprogramming #systems #systemsoftware #systemdesign #distributed systems #backendengineer #backenddeveloper #rustdeveloper #rustengineer #rustcommunity #learnrust #learntocode #programmingtutorial #codingtutorial #rusttutorial #rustcourse #programmingeducation #techeducation #techtutorial #codingeducation #computer science #computerscience #softwaredevelopment #softwaredeveloper #softwareengineering #engineering #tech #technology #opensource #opensourcecommunity #github #git #terminal #commandline #cli #linux #unix #macos #developerlife #devlife #programminglife #code #sourcecode #debugging #debug #compilerdesign #разработкаязыков #языкипрограммирования #языкпрограммирования #rustlanguage #современныйrust #продвинутыйrust #промежуточныйrust #основыrust #концепцииrust #внутренниевещиrust #под капотомrust #объяснениеrust #глубокийанализrust #глубокийанализ #техническийконтент #создательтехнологий #контентпрограммирования #контенткодирования #youtube #программированиенаyoutube #каналyoutube #кодированиеyoutube #техноyoutube #точкас запятой #каналтточкис запятой #craftbetterssoftware #узнайчтоновое #ежедневноекодирование #100днейкода #вызовкодирования #вызовпрограммирования #вызовrust #сообществоразработчиков #программист #программисты #архитекторпрограммногообеспечения #архитектурапрограммногообеспечения #техническийдолг #чистыйкод #лучшиепрактики #шаблоныпроектирования #абстракция #реализация #производительность #оптимизация #времявыполнения #оптимизациявремякомпиляции #абстракциянулевойстоимости #эффективныйкод #memoryefficiency #resource Management #async runtime #eventloop #nonblocking #blocking #await #asyncfn #asyncfunction #asyncfunctions #asyncio #futuresrust #futuretrait #stdfuture #stdpin #stdboxed #ruststd #ruststdlib #rustdocumentation #rustbook #rustlings #cratesio #crates #cargo #cargo run #rustcversion #rust177 #rust198 #rustversion #stable Rust #ruststable #rustnightly #nightlyrust #rustrelease #rustreleaseupdates #rustfeatures #rustnews #rusttips #rusttricks #rustfacts #rustinternals #rustunderstanding #rustleearning #ruststudy #rustnotes #rustprojects #rustproject #rustrepo #rustrepository #rustcode #rustsnippet #rustexample #rustexamples #codeexample #codeexamples #minimalexample #reproducibleexample #mre #programmingconcepts #computerengineering #computerscienceeducation #softwareengineeringeducation #techlearning #learnprogramming #codingforbeginners #programmingforbeginners #advancedprogramming #expertprogramming #professionaldevelopment #techcareer #softwarecareer #engineeringcareer #techjobs #backendjobs #rustjobs #webdevelopment #webengineering #apis #microservices #scalability #reliability #resilience #cloudnative #infrastructure #devops #sre #databases #databaseengineering #networking #protocols #performanceengineering #profiling #benchmarking #memorylayout #datastructures #algorithms #algorithm #datastructure #дерево #деревья #граф #графы #обход #поисквглубь #поисквширь #dfs #bfs #рекурсивныйалгоритм #итеративныйалгоритм #итерация #цикл #циклwhile #циклfor #рекурсияпротивситерации #функциональноепрограммирование #императивноепрограммирование #декларативноепрограммирование #лямбда #замыкание #замыкания #функциивысшегопорядка #обобщения #обобщенноепрограммирование #статическаядиспетчеризация #динамическаядиспетчеризация #мономорфизация #оптимизациякомпиляции #llvm #elonmusk #samaltman #sundarpichai #darioamodei #claudecode #claude #антропический #gemni #grok #grokbot #chatgpt