Coroutines and gRPC

Jonathan Storey

60
intermediate
advanced
14:00-15:00, Friday, 5th July 2024

Coroutines have a lot of potential, but a lack of library support means that they're difficult to get started with. In this talk, we look at how coroutines can be used to write high-performance gRPC procedures that can easily be composed with other coroutine libraries.

The talk starts with a quick recap of coroutines, moves on to a brief overview of gRPC, and ends with a close look at how to write the support code that allows us to use coroutines with the gRPC callback interface.

There is a clear focus on how coroutines can be used in production, today, and what we as developers need to write in order to enable their usage. After this talk, you should feel confident getting started writing coroutine support code for your own use-case.

We currently have an internal support library that we're hoping to publish as open source on GitHub (with documentation and demos)

coroutines
gRPC

Jonathan Storey

Senior C++ Developer at Oxford Nanopore Technologies, developing the core instrument software that drives our DNA sequencers. One particular area of interest is the RPCs that are used to drive our core software, and to provide progress and performance information to the end user