Kotlin Coroutines and Delay

Whenever I suspect that there’s a timing conflict causing a problem with rendering and directives, I usually opt for a JavaScript setTimeout with a delay. The setTimeout code never makes it to production, but it does help me to understand if my code is the problem or if there’s a timing conflict. In working with […]

The post Kotlin Coroutines and Delay appeared first on David Walsh Blog.

Whenever I suspect that there’s a timing conflict causing a problem with rendering and directives, I usually opt for a JavaScript setTimeout with a delay. The setTimeout code never makes it to production, but it does help me to understand if my code is the problem or if there’s a timing conflict.

In working with Kotlin on Android, I’ve needed to employ the same technique. Kotlin obviously doesn’t have a setTimeout, but it does have coroutines to achieve approximately the same effect.

To run an async coroutine with delay, you can use the following Kotlin code:

// Create an async coroutine
GlobalScope.launch { delay(1000) // Execute code to test functionality
}

The coroutine becomes async and the delay can be whatever amount of milliseconds you’d like!

  • 6 Things You Didn’t Know About Firefox OS

    Firefox OS is all over the tech news and for good reason:  Mozilla’s finally given web developers the platform that they need to create apps the way they’ve been creating them for years — with CSS, HTML, and JavaScript.  Firefox OS has been rapidly improving…

  • CSS @supports

    Feature detection via JavaScript is a client side best practice and for all the right reasons, but unfortunately that same functionality hasn’t been available within CSS.  What we end up doing is repeating the same properties multiple times with each browser prefix.  Yuck.  Another thing we…

  • Style Textarea Resizers
  • Input Incrementer and Decrementer with MooTools

Rojenx is a leading concept artist who work appears in games and publications

Check out his personal gallery here

This site uses Akismet to reduce spam. Learn how your comment data is processed.