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:135048

评论 1 条评论

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

Flink Checkpoint 状态后端详解:类型、特性对比及场景化选型指南

木南曌

flink 实时计算

SQLite的第一版不过是在GDBM上套了个壳

胡译胡说

sqlite 数据库 历史 KV存储

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

BlockChain先知

一张二维码VS一个行李箱?!看华为云时习知如何助力防城港核电基本安全考试

平平无奇爱好科技

Java 的诞生——从 Oak 到 Java

胡译胡说

Java 历史

我们是如何测试人工智能的(一)基础效果篇(内含大模型的测试内容)

测吧(北京)科技有限公司

昇思之路,从AI基础软件到生态繁花

脑极体

AI

Penpad Season 2 质押突破350ETH,参与可获Scroll生态空投

石头财经

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

加密眼界

为什么研发规范,代码评审,单元测试推不动

赫杰辉

Octavia Venture 成立,打造数十亿美元规模的 AI 价值体系

股市老人

Octavia Venture 成立,打造数十亿美元规模的 AI 价值体系

股市老人

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

大瞿科技

深入探索Linux的lsof命令

GousterCloud

Linux

劳动力规划:对企业加速运营的未来展望

智达方通

企业管理 企业转型 全面预算管理 劳动力规划

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

股市老人

Penpad Season 2 质押突破350ETH,还有望获Scroll生态空投

股市老人

ShowMeBug李亚飞:IDE与AI自动编程技术将增强超级程序员

B Impact

C++ 条件与 If 语句:掌握逻辑判断与流程控制精髓

小万哥

程序人生 编程语言 软件工程 C/C++ 后端开发

AI大模型微调训练营-毕业总结

简单

Python的流程控制,你真的会了吗?(一)

霍格沃兹测试开发学社

Golang数据库事务实践

俞凡

golang

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