QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

基于 Kotlin 协程实现异步编程

  • 2019-08-24
  • 本文字数:1295 字

    阅读完需:约 4 分钟

基于Kotlin协程实现异步编程

QCon北京2018大会上,Roman Elizarov 讲师做了《基于 Kotlin 协程实现异步编程》主题演讲,主要内容如下。


演讲简介


开发者越来越关注异步编程。现代软件系统都互相连接,保持通信。很多编程语言都加入了某种形式的异步支持,如 async/await。不过 Kotlin 用协程(coroutine)新颖地解决了这个问题。


我们一起看看基于 futures/promises 的传统 async/await 方式存在的问题,解释 Kotlin 基于 coroutine 和 continuation 概念提供的解决方案,从而了解为什么说 Kotlin 的编程模型更安全、更容易。


Asynchronous programming is on the rise. Modern software systems are connected and constantly communicating. Programming languages are adding some form of asynchronous programming like async/await. However, Kotlin had taken a fresh approach to this problem with Kotlin Coroutines.


In this talk, we’ll study various approaches to asynchronous programming, their evolution, differences and similarities. We’ll see the problem with the traditional async/await approach that is based on futures/promises and how the Kotlin’s solution that is based on concepts of coroutines and continuations is giving us safer and easier programming model.


讲师介绍


Roman Elizarov


JetBrains 工程师,Kotlin 开发团队成员


Roman Elizarov 有超过 16 年的职业软件开发经验。曾就职于 Devexperts,负责为领先的经纪公司设计和开发高性能交易软件。


他也是 Java 和 JVM 专家,擅长并发、实时数据处理、算法和现代架构的性能优化。Roman 目前在 JetBrains 参与 Kotlin 语言的开发。


Roman 于 2000 年毕业于圣彼得堡信息技术、机械与光学大学(ITMO)。现在也在该校开设了一门并发和分布式系统编程的课程。他在大学期间开始参与 ACM 国际大学生程序设计竞赛(ICPC)。从 1997 年到现在,他一直是 ICPC 欧洲东部和北部地区预赛的主裁判之一。


Roman Elizarov is a professional software developer with more than 16 years of experience. He had started his career at Devexperts, where he designed and developed high-performance trading software for leading brokerage firms and market data delivery services that routinely handle millions of events per second. He is an expert in Java and JVM, particularly in concurrency, real-time data processing, algorithms and performance optimizations for modern architectures. Roman currently works on Kotlin language at JetBrains. In 2000 Roman had graduated from St. Petersburg ITMO. He now teaches a course on concurrent and distributed programming in ITMO. During his undergraduate study he participated at ACM International Collegiate Programming Contest (ICPC). Since 1997 and until now Roman serves as a Chief Judge of Northeastern European Regional Programming Contest (NEERC) of ICPC.












完整演讲 PPT 下载链接


https://qcon.infoq.cn/2018/beijing/schedule


2019-08-24 17:135050

评论 1 条评论

发布
用户头像
无有效内容
2022-03-07 09:03
回复
没有更多了
发现更多内容

uniswap市值管理机器人系统开发

iOS 屏幕实时共享功能实践(内附详细代码)

融云 RongCloud

ios 音视频

RVB2601应用开发实战系列三: GUI图形显示

Roy夹馍

物联网 risc-v 嵌入式开发

手撕HashMap源码

程序员阿杜

Java 源码

完美!华为爆出Redis宝典,原来Redis性能可压榨到极致

Java~~~

Java redis 架构 面试 分布式

RVB2601应用开发实战系列五: 网络播放器设计(一)

Roy夹馍

物联网 risc-v 嵌入式开发

RVB2601应用开发实战系列四:FOTA镜像升级

Roy夹馍

物联网 risc-v 嵌入式开发

Tapdata 肖贝贝:实时数据引擎系列(四)-关于 Oracle 与 Oracle CDC

tapdata

oracle

21年字节+美团+腾讯,大厂必问面试真题总结(Java岗)

Java架构师迁哥

PancakeSwap市值管理机器人APP系统开发价格

云上数据不安全主要原因是什么?保障云上数据安全用什么软件好?

行云管家

云计算 数据安全 企业上云 云数据

进大厂为何要学Zookeeper?

冰河

zookeeper 分布式 一致性 服务注册与发现 协同系统

面面俱到!阿里巴巴2021最新Java面试参考权威指南泰山版震撼来袭

Java 架构 面试 后端 计算机

game+defi系统软件开发内容

做百度AI工程师,还要会“相牛”?

百度开发者中心

AI 最佳实践 方法论

快速解决运维过程中碰到的难题,就用行云管家!

行云管家

运维 运维人生 IT运维 企业运维

GameFi/DeFi+NFT软件系统开发方案

后疫情时代新机遇,运营商如何把握智能家居市场?

鲸品堂

智能家居 运营商 智能家居商业模式

Redis与Memcache对比

Linux服务器开发

数据库 redis 网络编程 Linux服务器开发 Memcache

限时!字节Java程序性能优化宝典开源,原来这才叫性能优化

Java~~~

Java 架构 面试 JVM 性能调优

高光时刻!美团推出Spring源码进阶宝典:脑图+视频+文档

Java~~~

Java spring 源码 架构 面试

GameFi游戏金融系统软件开发介绍

mac idea配置类和方法的注释

孙强

方法 Mac IDEA 添加注释

RVB2601应用开发实战系列二: 跑马灯

Roy夹馍

物联网 risc-v 嵌入式开发

RVB2601 应用开发实战系列一: Helloworld 最小系统

Roy夹馍

物联网 risc-v 嵌入式开发

回款金额自动分配

明道云

带你彻底认识Paxos算法、Zab协议和Raft协议的原理和本质

Java 架构 面试 分布式 计算机

惊艳!阿里自爆用480页讲清楚了44种微服务架构设计模式

Java~~~

Java spring 架构 面试 微服务

云小课|VMware备份上云学习专列来了,快加入吧~

华为云开发者联盟

云备份 VMware备份 备份上云

TLS协议分析 (一) 设计目标及历史

OpenIM

你了解自己的业务IO么?

焱融科技

云计算 技术 分布式 高性能 存储

基于Kotlin协程实现异步编程_QCon_Roman Elizarov_InfoQ精选文章