Skip to content

Add Long-Running Envelope Worker Isolate for Android, iOS, macOS #3166

@buenaflor

Description

@buenaflor

Description

Summary

Create a single long-lived Dart isolate to process Sentry envelopes -> offloads sending envelopes from the main isolate

Requirements

  • FFI / JNI is already used for captureEnvelope
  • Auto-spawn on init
  • Enabled by default but can be disabled by a flag (disabled means default behaviour as it is now - sending in main isolate)
  • Message transfer via TransferrableTypedData or we transfer the serialized envelope and do the byte conversion within the isolate

Notes

  • Need to benchmark to make sure the performance gain is still worth it for small envelopes - if sending small envelopes in the main isolate is still faster then we'll only use the isolate for envelopes bigger than a certain size

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions