前言:关于kotlin的介绍网上一大堆,用于网络请求的介绍也是一大堆,此文章不讲解各种原理,只讲实例使用,只要你有kotlin基础保证能看懂,看完就可以实际将kotlin应用于网络请求,从此废弃掉回调地狱,让你的app飞起来吧本文的网络请求使用了Retrofit2 + okhttp,因为使用的是,就再也不需要回调地狱了,所以抛弃了Rxjava1.先集成相关sdk在app模块目录buil
在本系列第二篇文章 中的取消和异常 | 取消操作详解 中,我们学到,当一个任务不再被需要时,正确地退出十分的重要。在 Android 中,您可以使用 Jetpack 提供的两个 CoroutineScopes: viewModelScope 和 lifecycleScope,它们可以在 Activity、Fragment、Lifecycle 完成时退出正在运行的任务。如果您正在创
该总结系列包含多篇,从介绍开始,到如何使用,到与RxJava的对比,到如何将现有代码转向形式,以及现有的三方库(依赖注入、图片加载、权限请求等)。 文章目录0 是什么使用场景1 在Android中引入2 一个示例3 CoroutineScope的种类(1)CoroutineScope(2)MainScope(2)GlobalScope4 上下文CoroutineCon
使用完成本地数据库SQLite操作封装daopackage com.example.kotlin01.database import android.app.Application import androidx.room.Database import androidx.room.Room import androidx.room.RoomDatabase import com.exampl
1.     Android中进程与进程、线程与线程之间如何通信? 1)一个 Android 程序开始运行时,会单独启动一个Process。 默认情况下,所有这个程序中的Activity或者Service都会跑在这个Process。 默认情况下,一个Android程序也只有一个Process,但一个Process下却可以有许多个Thread。 2)一个 A
作者:谭嘉俊1、概述本篇文章讲解的内容是在Android中使用。在说程之前,我先说下线程和线程池:线程是操作系统的内核资源,是CPU调度的最小单位,所有的应用程序都运行在线程上,它是我们实现并发和异步的基础。
转载 2021-09-24 15:27:19
1655阅读
1点赞
## 在Java中使用 是一种轻量级的线程,可以在执行过程中暂停,保存当前状态,并在需要的时候恢复执行。在Java中,可以通过一些库或框架来实现,例如Quasar和Kilim。 ### 的优势 相较于传统的线程有以下优势: 1. **更高的性能**:的切换开销比线程小得多,因为它们是在同一个线程中切换的,不需要进行上下文切换和内核态和用户态之间的转换。 2. **更
原创 2023-08-05 15:16:57
315阅读
在Java中使用 (Coroutine)是一种轻量级线程,可以在执行过程中暂停并恢复。它相比于传统的多线程模型更加高效和易用,可以简化并发编程的复杂性。在Java中,可以通过一些库和框架来实现,本文将介绍如何在Java中使用,并且通过代码示例来演示其用法。 ### 的基本概念 是一种特殊的函数,可以在执行过程中主动让出控制权,暂停并保存当前的执行状态,然后在之后的某个
原创 2023-08-05 15:17:34
480阅读
基础知识概念也可以被称为微线程,是一种用户态内的上下文切换技术。简而言之,就是通过一个线程实现代码块相互切换。与线程的不同不是计算机提供的,而是程序员人为创造的。线程和进程是由计算机操作系统提供的。与多线程的区别:多线程运行时:保证只有一个线程在运行,其他线程等待调度。这是python GIL锁导致的,会浪费一些资源开销。运行时:在一个线程中运行多个任务,任务与任务之间来回
flow 介绍之前介绍的启动方法,比如 launch、async 都是的单次启动。如果有复杂场景,比如发送多个数据,就需要使用 flow 数据流。在 flow 中,数据如水流一样经过上游发送,中间站处理,下游接收。创建 flow创建 flow 有 3 种方式:flow{}flowOf()asFlow()flowflow{} 中使用 emit 发送数据。fun flowEmit() = ru
转载 2024-04-03 15:18:48
472阅读
  一、前面我们简单的说了一下,Python中的原理。这里补充Java的实现过程。有需要可以查看python之。  二、Java,其实做Java这么久我也没有怎么听过Java的东西,但是一直有有听到微线程/的概念,这不在学习Python的时候接触到了一词。然后返回来去了解Java的问题,但是看了很多资料,发现官网以及很多地方都没有涉及到的东西,没有办法,只能通过
转载 2023-08-21 22:40:41
122阅读
的简介进程:应用程序的启动实例,比如打开一个软件,就是开启了一个进程。进程拥有代码和打开的文件资源、数据资源和独立的内存空间。线程:从属于进程,是程序的实际执行者。一个进程至少包含一个主线程,也可以有很多子线程。线程拥有自己的栈空间。:又称微线程,英文:Coroutine,是一种比线程更轻量级的存在。一个线程可以拥有多个协,这个概念很早就被提出来,但是近几年才开始得到广泛应用。
# Android使用指南 在现代Android开发中,是处理异步编程的一个重要工具,它能够帮助我们简化代码结构,避免回调地狱,同时提高应用的性能。本文将为刚入行的小白介绍如何在Android中使用,以便于更好地理解和应用。 ## 一、基本流程 实现Android的基本流程如下表所示: | 步骤 | 描述
原创 2024-08-12 03:31:52
483阅读
这篇文章翻译自 Coroutines on Android (part I): Getting the background 文章目录1. 能解决什么问题?2. 长时间运行任务3. 使用执行长时间运行任务4. 的主线程安全5. withContext 的性能6. 总结 1. 能解决什么问题?Kotlin引入了一种新的并发样式,可以用在Android上以简化异步代码。虽然在 Ko
(1)首先回顾:内部类与外部类 点击打开链接(2)线程同步(这一段文字源于借鉴) 当多个线程访问同一个数据时,非常容易出现线程安全问题。 这时候就需要用线程同步 Case:银行取钱问题,有以下步骤: A、用户输入账户、密码,系统判断是否登录成功 B、用户输入取款金额 C、系统判断取款金额是否大于现有金额 D、如果金额大于取款金额,就成功,否则提示小于余额 现在模拟2个人同时对一个账户取
  本文是介绍 Android 系列中的第一部分,主要会介绍是如何工作的,它们主要解决什么问题。 用来解决什么问题? Kotlin 中的 提供了一种全新处理并发的方式,您可以在 Android 平台上使用它来简化异步执行的代码。是从 Kotlin 1.3 版本开始引入,但这一概念在编程世界诞生的黎明之际就有了,最早使用的编程语言可以追溯到 1967 年的 Simula
转载 2021-06-09 22:09:02
99阅读
2评论
# 在Java中使用Quasar实现 随着现代编程对并发和异步处理需求的日益增加,作为一种轻量级的并发编程模型,越来越受到开发者的青睐。本文将介绍如何在Java中使用Quasar库实现,并提供代码示例。 ## 什么是 是一种计算单元,允许函数在执行过程中的任意点挂起并在未来继续执行。与线程不同,通常是在用户级别管理的,因此它们的创建和上下文切换更加高效。 ## Qu
原创 11月前
112阅读
Coroutines on Android (part I): Getting the background这篇文章关注于是怎样工作的以及它们解决了什么问题1. 解决了什么问题kotlin简化了异步代码,kotlin的并不是一个新概念,很多语言比如c#,python ,go等在发展初期就已经有了。 对于Andorid,解决了以下两个问题:耗时任务, 这些任务会阻塞主线程。线
用来解决什么问题?Kotlin 中的提供了一种全新处理并发的方式,您可以在 Android 平台上使用它来简化异步执行的代码。是从 Kotlin 1.3 版本开始引入,但这一概念在编程世界诞生的黎明之际就有了,最早使用的编程语言可以追溯到 1967 年的Simula 语言。在过去几年间,这个概念发展势头迅猛,现已经被诸多主流编程语言采用,比如 Javascript、C#、Pyt
有两大优势:异步逻辑同步化表达。什么意思呢,就是整个代码看下来都是同步的,只需要函数return返回结果就行,不需要考虑太多回调的方式,避免了广为所知的回调地狱 用更少的线程做尽量多的任务。从官方文档可以获取到,只是线程上运行的代码块,在线程阻塞的时候,使用挂起操作,使得线程可以回到线程池,继续做其他的任务,减少了很多不必要的系统资源消耗 基于第二点,我尝试过写demo进行各种验证,但是测
转载 2023-08-08 10:19:57
117阅读
  • 1
  • 2
  • 3
  • 4
  • 5