什么是?百度上一大堆,随时可以查。我认为就是微线程,比线程还要小。为什么要引入?我们发现在线程使用中,有一个GIL锁,线程之间访问临界资源是互斥的,这都是不利于提升代码执行效率的。我们知道线程是CPU调度的最小单位,如果我们有一个线程,线程内包含多个协程之间来回切换就设计不到CPU的切换,就会减小很多不必要的开销。和线程相比,切换是由代码的关键字完成的,代码自由度要高一些。
关于异常处理,一直以来都不是一个简单问题。因为涉及到了很多方面,包括 异常的传递 ,结构化并发下的异常处理 ,异常的传播方式 ,不同的Job 等,所以常常让很多(特别是刚使用的,也不乏老手)同学摸不着头脑。常见有如下两种处理方式:try catchCoroutineExceptionHandler但这两种方式(特别是第二种)到底该什么时候用,用在哪里,却是一个问题?比如虽然知道 Coro
转载 2024-01-03 08:44:33
141阅读
            在 Kotlin 当中,我们通常把异常分为两大类,一类是取消异常(CancellationException),另一类是其他异常。在 Kotlin 当中,这两种异常的处理方式是不一样的。        一、c
转载 2023-11-30 12:35:50
108阅读
一、Android 中出现异常导致应用崩溃、二、Android 中使用异常
是 Kotlin 1.1 引入的最牛逼的功能。他们确实很棒,不但很强大,而且社区仍然在挖掘如何使他们得到更加充分的利用。简单来说,是一种按序写异步代码的方式。你可以一行一行地写代码,而不是到处都有乱七八糟的回调。有的还将会有暂停执行然后等待结果返回的能力。如果你以前是 C# 程序员,async/await 是最接近的概念。但是 Kotlin 中的功能更强大,因为他们不是一个特定想法的实
转载 2023-11-09 11:11:42
70阅读
一、异常处理器 CoroutineExceptionHandler 捕获异常1、对比 launch 和 async 创建的
一、异常处理、二、根自动传播异常、1、异常抛出点 ( 体抛出异常 )、2、异常
官网介绍:https://developer.android.com/kotlin/coroutines一、的概念(Coroutines)是一种并发设计模式,可以在 Android 平台上使用它来简化异步执行的代码。 是在版本 1.3 中添加到 Kotlin 的,它基于来自其他语言的既定概念。在 Android 上,有助于管理长时间运行的任务.二、的特点是在 Android
转载 2023-09-11 21:44:05
170阅读
一:是什么?基于线程,是轻量级的线程 coroutine = cooperation+routine 难度在哪里? 1,java中不曾出现,新概念 2,概念不清晰 3,Kotlin基础不扎实 4,多线程基础太薄弱二:在android用来解决什么问题?1,处理耗时任务,这种任务常常会阻塞主线程 2,保证主线程安全,确保安全的从主线程调用任何suspend函数(挂起函数) 异步任务已经过
转载 2023-12-20 17:35:55
130阅读
前言大家好,我是小益!在上章内容中,我们简单了解了什么是以及的基本使用,主要提到了的launch与withContext用法。但是launch与withContext并不适合用于需要返回结果的并发场景,在并发场景中,我们一般会使用的async/await。推荐文章将率先在公众号「Code满满」上发布,欢迎大家关注!一、async与awiatasync单单从字面意思理解就知道其与异步
转载 2023-07-28 00:03:15
257阅读
当一个由于一个异常而运行失败时,它会传播这个异常并传递给他的父级。superviso\
原创 2023-03-16 07:37:50
228阅读
一、SupervisorJob 、二、supervisorScope 作用域构建器函数
原创 2022-12-10 07:41:17
335阅读
废话留在结尾了。以下括号内有的是细分问题,有的是关键点。(注:我简历上有写源码okhttp、Retrofit、Glide、Eventbus、Arouter。)一、作业帮:1面:        1、Https握手过程(CA验证、哪些是对称加密、哪些非对称加密,ssl包含哪些内容);     
目录 前言 Kotlin,现在已经成为了面试甚至是工作中一个非常火的东西。本人在刚开始了解Kotlin的时候,断断续续看了网上不少文章,用长篇大论把Kotlin描述的非常玄乎,但是看完后还是依然云里雾里,所以决定来写一篇关于的文章,希望能够帮助大家能够更快的上手KotlinJetPack里的组件上图就是JetPack中包含的组件列表,每个组件都是相对独立的,可以被单独使用和构建
转载 2024-02-01 15:12:12
50阅读
如何理解是一种不同于进程和线程的存在,其本质是一种函数,同一线程中的多个协是串行执行的,但为了理解仍然需要三者一起对比。进程、线程、三者的上下文切换对比:进程线程切换者操作系统操作系统用户(编程者/应用程序)切换时机根据操作系统自己的切换策略,用户不感知根据操作系统自己的切换策略,用户不感知用户自己(的程序)决定切换内容页全局目录&内核栈&硬件上下文内核栈&amp
解决了什么?Coroutines作为Kotlin的一大特性,被Android官方所强推,主要用来简化Android中异步代码的编写,将开发者从异步代码的泥潭中解救出来。在Android开发中,Coroutines所解决的两个最大的问题是:耗时任务:阻塞主线程主线程安全:任何suspend方法都可以在主线程中被调用我们来详细看看这两大问题,Coroutines都是如何去解决的。耗时任
是一种解决方案,是一种解决嵌套,并发、弱化线程概念的方案。能让多个任务之间更好的协作,能够以同步的方式编排代码完成异步工作,将异步代码写的像同步代码一样直观。重点 的本质是方法的挂起与恢复:return + callback是什么:是可以由程序自行控制挂起、恢复的程序可以实现多任务的协作执行可以用来解决异步任务控制流的灵活转移的作用:可以让异步代码同步化
转载 2023-07-03 21:27:19
2063阅读
目录 前言 Kotlin,现在已经成为了面试甚至是工作中一个非常火的东西。本人在刚开始了解Kotlin的时候,断断续续看了网上不少文章,用长篇大论把Kotlin描述的非常玄乎,但是看完后还是依然云里雾里,所以决定来写一篇关于的文章,希望能够帮助大家能够更快的上手Kotlin第一章:设计思想与代码质量优化1、设计思想六大原则 2、三大设计模式 3、数据结构 4、算法第二章:程序性
转载 2023-07-01 17:37:01
221阅读
前言虽然本文的主题是启动器,但是笔者不打算去写怎么做启动优化,以及怎么实现一个完美的启动器。关于开源的第三方Android启动器已经有很多优秀的轮子了,比如阿里巴巴的alpha,参考 alpha 并改进其部分细节的Anchors,Start数比较高的android-startup,以及Android官方自己的app-startup等等。本文的了灵感来源于我爱田Hebe的应用程序启动优化新思路 -
Kotlin Coroutines()是一种编程思想,并不局限于特定的语言。可以使用阻塞的方式写出非阻塞式的代码,解决并发中常见的回调地狱。消除了并发任务之间的协作的难度。 在 android 中使用引入依赖root build.gradleplugins { // kotlin编译插件 id 'org.jetbrains.kotlin.android' version '1
转载 2023-08-18 02:37:25
170阅读
  • 1
  • 2
  • 3
  • 4
  • 5