FrService class abstract
FrService
- Inheritance
- Mixed-in types
- Implementers
Constructors
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
autoDispose<
T extends StreamSubscription?> (T subs, {String? tag}) → T -
inherited
-
debounce<
R> (Object tag, Duration duration, FutureOr< R> action(), {Duration? maxDuration}) → FutureOr<R?> -
debounce 防抖: 停止操作后等待
duration执行最后一次。maxDuration: 可选,解决“无限重置”问题。如果持续触发超过此时间,强制执行一次。inherited -
dispose(
) → void -
inherited
-
frPrint(
String message, {DateTime? time, int? sequenceNumber, int? level, String? name, Zone? zone, Object? error, StackTrace? stackTrace}) → dynamic -
inherited
-
isDebounceLocked(
Object tag) → bool -
检查是否正在防抖等待中
inherited
-
isMutexLocked(
Object tag) → bool -
检查是否正在执行 mutex 任务
inherited
-
isThrottleLocked(
Object tag) → bool -
检查是否处于节流冷却期
inherited
-
logger(
String message, {LogExtra? logExtra, DateTime? time, int? sequenceNumber, int level = 0, String? name, Zone? zone, Object? error, StackTrace? stackTrace, bool uriFrame = true}) → dynamic -
logExtraprint stack frame infonamelogger.name null: and iflogExtra==null: will use 'runtimeType' else: will use stack frame infostackTracewill print with red color by dev.log but iferror== null: will ignorestackTraceinherited -
mutex<
R> (Object tag, FutureOr< R> action()) → FutureOr<R?> -
mutex 互斥锁 (Exhaust): 立即执行,执行期间的触发直接丢弃。
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
runCatching<
R> (FutureOr< R?> block(), {FutureOr<R?> onSuccess(R data)?, FutureOr<R?> onFailure(Object e, StackTrace s)?, bool ignoreSkipError = true, int slowlyMs = 0, Object? debounceTag, Object? throttleTag, Object? mutexTag}) → FutureOr<R?> -
ignoreSkipErrorsame asupdate((o)=>null)true: SkipError will not triggeronFailurewhen true ref skpIf/skpNullslowlyMsif set <=0 value, will ignore debounce/throttleTagdebounceTagenable debouncethrottleTagenable throttlemutexTagenable concurrency lock (Exhaustive behavior)inherited -
skpIf(
bool condition, String reason) → void -
if you want interrupt the normal flow, but not trigger
runCatching.onFailureinherited -
skpIfNull(
Object? obj, String reason) → void -
if
obj==null, throw SkipError ref skpIfinherited -
skpNull<
T> (T? obj, String reason) → T -
if
obj== null: throw SkipError else: returnobj!inherited -
subBy<
T extends StreamSubscription> (String tag) → T -
inherited
-
throttle<
R> (Object tag, Duration duration, FutureOr< R> action(), {bool ensureLast = false}) → FutureOr<R?> -
throttle 节流: 固定频率执行。
配合 mutex 解决异步任务重叠问题:如果周期到了但上次任务还没跑完,直接跳过。
ensureLast: 如果为 true,则在节流期间的最后一次触发将被防抖补发。inherited -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited