zone_local 0.2.0-nullsafety.0 zone_local: ^0.2.0-nullsafety.0 copied to clipboard
A simple, type-safe package for declaring static variables (for configuration, etc.) that can have zone-scoped values.
Introduction #
A simple, type-safe package for declaring static variables that may have zone-scoped values. These are similar to ThreadLocal values in programming languages such as Java.
See explanation of zones at dartlang.org.
Getting Started #
1.Add dependency #
In pubspec.yaml
:
dependencies:
zone_local: ^0.2.0-nullsafety.0
2.Usage #
import 'package:zone_local/zone_local.dart';
final ZoneLocal<String> greeting = new ZoneLocal<String>(
defaultValue: 'Hello!',
);
void main() {
// This zone sees the default value.
print(greeting.value); // Hello!
// Fork a zone that will see a different value when the zoneLocal is accessed.
final zone = greeting.forkZoneWithValue('Hi!');
zone.run(() {
print(greeting.value); // Hi!
});
}