返回 Skill 列表
extension
分类: 开发与工程无需 API Key

Android Concurrency

协程、流和线程的标准

person作者: jakexiaohubgithub

Android Concurrency Standards

Priority: P0

Implementation Guidelines

Structured Concurrency

  • Scopes: Always use viewModelScope (VM) or lifecycleScope (Activity/Fragment).
  • Dispatchers: INJECT Dispatchers (DispatcherProvider) for testability. Do not hardcode Dispatchers.IO.

Flow usage

  • Cold Streams: Use Flow for data streams.
  • Hot Streams: Use StateFlow (State) or SharedFlow (Events).
  • Collection: Use collectAsStateWithLifecycle() (Compose) or repeatOnLifecycle (Views).

Anti-Patterns

  • GlobalScope: **No GlobalScope**: Use structured scopes.
  • Async/Await: **Avoid Async**: Prefer simple suspend functions unless parallel execution is needed.

References