Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve CoroutineDispatcher documentation #3359

Merged
merged 8 commits into from
Jul 12, 2022
Merged

Improve CoroutineDispatcher documentation #3359

merged 8 commits into from
Jul 12, 2022

Conversation

qwwdfsad
Copy link
Contributor

@qwwdfsad qwwdfsad commented Jul 6, 2022

Fixes #3354

@qwwdfsad qwwdfsad requested a review from dkhalanskyjb July 6, 2022 14:32
kotlinx-coroutines-core/common/src/CoroutineDispatcher.kt Outdated Show resolved Hide resolved
kotlinx-coroutines-core/common/src/CoroutineDispatcher.kt Outdated Show resolved Hide resolved
kotlinx-coroutines-core/common/src/CoroutineDispatcher.kt Outdated Show resolved Hide resolved
* Implementations may use [context] for additional context-specific information,
* such as priority, whether dispatched coroutine can be invoked in place,
* coroutine name, and additional diagnostic elements.
*
* This method should guarantee that the given [block] will be eventually invoked,
* otherwise the system may reach a deadlock state and never leave it.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's even more sinister than that: if we drop dispatched coroutines, finally may never be executed, creating a nasty resource leak.

kotlinx-coroutines-core/common/src/CoroutineDispatcher.kt Outdated Show resolved Hide resolved
kotlinx-coroutines-core/common/src/CoroutineDispatcher.kt Outdated Show resolved Hide resolved
kotlinx-coroutines-core/common/src/CoroutineDispatcher.kt Outdated Show resolved Hide resolved
qwwdfsad and others added 6 commits July 12, 2022 16:16
Co-authored-by: dkhalanskyjb <52952525+dkhalanskyjb@users.noreply.github.com>
Co-authored-by: dkhalanskyjb <52952525+dkhalanskyjb@users.noreply.github.com>
Co-authored-by: dkhalanskyjb <52952525+dkhalanskyjb@users.noreply.github.com>
Co-authored-by: dkhalanskyjb <52952525+dkhalanskyjb@users.noreply.github.com>
Co-authored-by: dkhalanskyjb <52952525+dkhalanskyjb@users.noreply.github.com>
Co-authored-by: dkhalanskyjb <52952525+dkhalanskyjb@users.noreply.github.com>
@qwwdfsad qwwdfsad requested a review from dkhalanskyjb July 12, 2022 13:18
@qwwdfsad qwwdfsad merged commit c8271ad into develop Jul 12, 2022
@qwwdfsad qwwdfsad deleted the better-doc branch July 12, 2022 13:34
pablobaxter pushed a commit to pablobaxter/kotlinx.coroutines that referenced this pull request Sep 14, 2022
pablobaxter added a commit to pablobaxter/kotlinx.coroutines that referenced this pull request Sep 14, 2022
…to baxter/upstream-flow-timeout

* origin/baxter/upstream-flow-timeout: (328 commits)
  Commit API dump
  Cleanup API, update knit
  Fix typo in runTest method docs (Kotlin#3417)
  Update coroutines-and-channels.md (Kotlin#3410)
  chore: update the website's release step (Kotlin#3397)
  ktl-695 chore: support Dokka HTML customization (Kotlin#3388)
  update: KT-50122 adding kotlinx.dependencies
  Improve bump-version.sh (Kotlin#3365)
  Fix documentation for `DEBUG_PROPERTY_VALUE_OFF` (Kotlin#3389)
  feat: moving coroutines hands-on to docs (Kotlin#3369)
  Version 1.6.4
  Improve CoroutineDispatcher documentation (Kotlin#3359)
  Update binary compatibility validator to 0.11.0 (Kotlin#3362)
  Add a scope for launching background work in tests (Kotlin#3348)
  Fix debug module publication with shadow plugin (Kotlin#3357)
  Comply with Subscriber rule 2.7 in the `await*` impl (Kotlin#3360)
  Update readme (Kotlin#3343)
  Reduce reachable references of disposed invokeOnTimeout handle (Kotlin#3353)
  breakleg; knit validation fix
  Additional comment in CoroutineScheduler
  ...

# Conflicts:
#	README.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants