Clean up SDK pending calls and notification callbacks on future drop
Preserve late lock-grant release separately, and drop callback captures outside transport state borrows. Document process-lifetime host watches. Card: SAU-391
This commit is contained in:
+8
-4
@@ -275,10 +275,14 @@ IO; only overlapping opens and rename/removal wait for one another.
|
||||
Watch the narrowest useful path: delivery is not rate-limited, so watching a
|
||||
busy parent can cause a rescan for every write.
|
||||
|
||||
The watch ends with its caller; there is no cancellation API or polling/retry
|
||||
loop. SDK callers should poll the watch future alongside their handler's work
|
||||
and drop it on return, not keep it in a background task that prevents an idle
|
||||
process from exiting. Dropping the future does not cancel the host watch.
|
||||
The host-side watch ends only when its caller process exits, not on a change
|
||||
notification; there is no cancellation API or polling/retry loop. SDK callers
|
||||
should poll the watch future alongside their handler's work and drop it on
|
||||
return, not keep it in a background task that prevents an idle process from
|
||||
exiting. Dropping the future removes the SDK's pending entry and callback, so
|
||||
late notifications and responses are ignored; it does not cancel the host
|
||||
watch. A long-lived service keeps one watch per purpose for its lifetime,
|
||||
rather than repeatedly opening and dropping watches.
|
||||
|
||||
## 5. Endpoints
|
||||
|
||||
|
||||
Reference in New Issue
Block a user