写点什么

基于 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:135263

评论 1 条评论

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

Bazel与Gradle构建工具差异对比

轻口味

android 构建工具 10月月更

架构实战营-模块一作业

御道而行

架构实战营

现成合约交易系统开发模板

自定义View:属性动画和硬件加速

Changing Lin

10月月更

NB!阿里首次公布Java10W字面经,Github访问量破百万

Java 程序员 架构 面试 计算机

语聊房 SDK,下一代场景化解决方案新范式

融云 RongCloud

iOS 布道者龙神:永远挑战难度值增加 30% 的事情

融云 RongCloud

Java自定义异步功能实践

FunTester

Java 线程池 接口测试 异步 FunTester

区块链数字货币交易所系统软件开发详情(源码)

合约跟单系统软件开发资料(搭建)

SQL实现连续登陆人数天数统计

大象灵感

sql 大数据 hive 数据仓库 数据分析

现成交易所系统软件开发案例

区块链交易所系统软件开发资料(源码)

区块链交易所系统开发方案(案例)

北京天源迪科携迪易采参加“第五届中央企业电商化采购发展高峰论坛”

科技热闻

区块链数字货币交易所系统开发资料(案例)

WICC 话题剧透|Beeto 陈昊:中东爆款社交平台是怎样炼成的

融云 RongCloud

CTF专题一2021网络WEB题目解析

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

合约交易系统软件开发介绍(源码搭建)

现成合约交易系统软件开发案例

Linux下进程崩溃定位

正向成长

OOM崩溃

百度吴甜:首席AI架构师培养计划持续为行业输送高端复合型AI人才

百度大脑

人工智能 百度

Flink Could not find any factory for identifier 'XXX' 排查过程

大可大大大

从语聊房 SDK 的诞生,看 PaaS 服务的演进过程

融云 RongCloud

博鳌科创论坛第二届大会区块链分论坛预告

Geek_6e23d8

区块链 博鳌亚洲论坛

官方线索|脉脉1024程序员嘉年华

穿过生命散发芬芳

1024我在现场

如何选购四屏或多屏炒股电脑主板?

双赞工控

主板定制

Kubernetes Service Proxy 无秘密

绅鱼片

Kubernetes 网络 iptables k8s网络 kube-proxy

Transformer模型在语音识别领域最新进展,百度语音发布重大技术突破SMLTA2

科技热闻

自媒体团队会面临哪些瓶颈和困境

石头IT视角

/var/lib/docker目录磁盘满了,更换默认目录

阿呆

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