stream_disposer 0.0.5 copy "stream_disposer: ^0.0.5" to clipboard
stream_disposer: ^0.0.5 copied to clipboard

StreamDisposer

example/main.dart

import 'dart:async';
import 'package:stream_disposer/stream_disposer.dart';

class MyStreamHandler with StreamDisposer {
  void startListening(Stream<int> stream) {
    // add a single subscription
    addSubscription(
      stream.listen((data) {
        print('Data: $data');
      }),
    );

    // add multiple subscriptions
    addSubscriptions([
      stream.listen((data) {
        print('Data1: $data');
      }),
      stream.listen((data) {
        print('Data2: $data');
      }),
    ]);
  }

  @override
  void dispose() {
    // Perform any additional cleanup if necessary
    super.dispose(); // Ensure all subscriptions are canceled
  }
}

void main() {
  final myStreamHandler = MyStreamHandler();
  final stream =
      Stream<int>.periodic(const Duration(seconds: 1), (count) => count);

  myStreamHandler.startListening(stream);

  // Wait for 5 seconds
  Future.delayed(const Duration(seconds: 5), () {
    myStreamHandler.dispose();
  });
}
4
likes
0
points
6
downloads

Publisher

verified publisherflutter.sskplay.com

Weekly Downloads

StreamDisposer

Repository (GitHub)
View/report issues

Topics

#stream #dispose #cancel

Documentation

Documentation

Funding

Consider supporting this project:

github.com

License

unknown (license)

Dependencies

meta

More

Packages that depend on stream_disposer