-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Problem:
Currently, orbit_task focuses on platform-native background execution (WorkManager, BGTaskScheduler). However, developers often need to run heavy computations or long-running tasks while the app is in the foreground without blocking the Main UI thread.
Goal:
Research the feasibility and design of an Isolate-based execution model within orbit_task. This would allow developers to easily offload tasks to a separate Dart Isolate with a simple API, similar to how they schedule native background tasks.
Key Questions:
- How can we simplify the API for spawning and communicating with isolates (e.g.,
computefunction vs. long-livedIsolates)? - Can we reuse the existing
BackgroundTaskdata structure for isolate tasks? - How should we handle bidirectional communication (progress updates) between the UI isolate and the worker isolate?
- What are the performance implications and limitations (e.g., platform channel access from background isolates)?
- Should this be part of the core
orbit_taskpackage or a separate module?
Deliverables:
- A design document or architecture proposal.
- A proof-of-concept (POC) demonstrating simple task offloading to an Isolate.
- Recommendations for future implementation.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request