草庐IT

dart-async

全部标签

Flutter/Dart第12天:Dart控制流详解

Dart控制流主要由循环和分支组成:Dart官方文档-循环:https://dart.dev/language/loopsDart官方文档-分支:https://dart.dev/language/branches重要说明:本博客基于Dart官网文档,但并不是简单的对官网进行翻译,在覆盖核心功能情况下,我会根据个人研发经验,加入自己的一些扩展问题和场景验证。循环Dart可通过循环来控制逻辑流,它支持3种语句:for循环,while和dowhile循环,break和continue等同时,也可以通过非循环来控制逻辑流,包括:分支(如:if和switch)和异常(try、catch和throw)等

一盏茶的功夫帮你彻底搞懂JavaScript异步编程从回调地狱到async/await

 🎬江城开朗的豌豆:个人主页 🔥 个人专栏 :《VUE》 《javaScript》⛺️ 生活的理想,就是为了理想的生活 !目录📘1.引言📘2.使用方法📘 3.实现原理📘4.写到最后 📘1.引言在深入讨论async/await之前,我们需要了解一下JavaScript的单线程和非阻塞的特性。JavaScript是单线程的,也就是说在任何给定的时间点,只能执行一个操作。然而,对于需要大量时间的操作(例如从服务器获取数据),如果没有适当的管理机制,这种单线程特性可能会导致应用程序的阻塞。为了解决这个问题,JavaScript引入了回调函数和后来的Promise,用来管理这些异步操作。然而,回调函数和

【window10】Dart+Android Studio+Flutter安装及运行

安装DartSDK安装AndroidStudio安装Flutter在AndroidStudio中创建并运行Flutter项目安装前,请配置好你的jdk环境,准备好你的梯子~安装DartSDK浅浅了解一下Dart:Dart诞生于2011年,是由谷歌开发的一种强类型、跨平台的客户端开发语言。Dart是一种简洁、清晰、基于类的面向对象的语言,具有专门为客户端优化、高生产力、快速高效、可移植(兼容ARM/x86)、易学的OO编程风格和原生支持响应式编程(Stream&Future)等优秀特性。它是基于JavaScript的,但是结构比JavaScript多。DartSDK官网:DartSDK官网安装步

Promise、generator、async类同步编程

受javascript语言特性的影响,编程过程中充斥着大量异步回调,这会让代码维护起来特别麻烦,一步步走向回调地狱。社区中最早提出Promise解决方案,es6将其融入语法标准,并提供了generator、async,向类同步编程不断努力。本文会通过这三个方面演示类同步进化过程。1.PromisePromise提供异步编程的容器,包含异步代码,在得到异步结果时,通过resolve传递数据(resove对应then所指定的函数,其实也就是单个过程的异步回调,可以理解成将之前的回调函数放在then方法中定义)。以ajax请求封装为例:传统形式functionajax(url,success){va

Flutter/Dart第11天:Dart函数方法详解

Dart官方文档:https://dart.dev/language/functions重要说明:本博客基于Dart官网文档,但并不是简单的对官网进行翻译,在覆盖核心功能情况下,我会根据个人研发经验,加入自己的一些扩展问题和场景验证。Dart语言是纯面向对象的编程语言,就是是函数也是对象,它的类型就是Function类(https://api.dart.dev/stable/3.1.3/dart-core/Function-class.html)。如下代码样例,函数的不同实现。如果函数实现仅仅只有1个表达式,那么函数可以使用箭头语法:=>returnexpression;//函数实现booli

【C++ Boost】一个最基本的异步boost async tcp 服务/客户端代码的深刻解析,一文解决所有接口的用法以及一些容易出错的点

Boostasynctcp一、平台的选择以及基本构建方法1.官网链接2.平台选择3.Boost库下载4.构建方法二、服务端代码片段讲解+接口解析+易错点解析1.main函数代码(boost_server.cpp)2.任务类classtcpserver代码(boost_server.h)(1)构造函数及启动函数start(2)接受函数accept()的解析以及shared_from_this的核心问题(3)async_read()与async_read_some()注意事项(4)async_write()注意事项三、客户端代码片段讲解+接口解析+易错点解析1.任务类classtcpclient代

Flutter/Dart第10天:Dart高级特性Pattern模式的全部类型(共15种)

Dart官方文档:https://dart.dev/language/pattern-types重要说明:本博客基于Dart官网文档,但并不是简单的对官网进行翻译,在覆盖核心功能情况下,我会根据个人研发经验,加入自己的一些扩展问题和场景验证。和操作符一样,模式运算也遵循一定的优先级规则,我们可以通过增加括号()让低优先级规则的模式优先运算:逻辑或模式低于逻辑与模式,逻辑与模式低于关系模式:逻辑或。一元模式优先级相同:值转换、空检测、空断言。其他的模式都具有最高的优先级,集合类型(List列表、Map映射和Record记录)和对象模式包含了其他数据,因此作为外部模式优先运算。逻辑或模式(Logi

flutter的异步操作 future、async、await

Future对象表示异步操作的结果,我们通常通过then()来处理返回的结果async用于标明函数是一个异步函数,其返回值类型是Future类型await用来等待耗时操作的返回结果,这个操作会阻塞到后面的代码isolate异步并行多个任务,Future是异步串行多个任务1、future作为函数的返回对象在普通函数中,return返回的为T,那么在async函数中返回的是Future。Future表示一个指定类型的异步操作结果(不需要结果可以使用Future)main(){Future.delayed(Duration(milliseconds:200),(){print("我是延迟的Futur

Flutter/Dart第09天:Dart高级特殊Pattern模式的概览和用法

Dart官方文档:https://dart.dev/language/patterns重要说明:本博客基于Dart官网文档,但并不是简单的对官网进行翻译,在覆盖核心功能情况下,我会根据个人研发经验,加入自己的一些扩展问题和场景验证。Pattern模式匹配的定义官网定义:PatternsareasyntacticcategoryintheDartlanguage,likestatementsandexpressions.Apatternrepresentstheshapeofasetofvaluesthatitmaymatchagainstactualvalues.初看定义不太好理解,感觉有点绕

Flutter/Dart第08天:Dart类型(内置类型、记录、集合、泛型和类型别名)

Dart内置类型(共10类)Dart官网文档:https://dart.dev/language/built-in-typesDart内置类型即DartSDK自带的类型,我们编程过程中可直接使用的类型,主要分为10类:数值类型:包括int类、double类等。字符串类型:即String类。布尔类型:即bool类。记录类型:即Record类,Dart3中开始支持(最新版本的Java21也支持)。列表类型:即List类,同时也是数组。Set类型:即Set类。映射类型:即Map类。字符类型:与字符相关处理。符合类型:即Symbol类。特殊值:null空值。Dart中类型的其他一些规则:Object类