batchStreamSync method
- int batchRows = 65536,
- int capacity = 2,
- ExecutionEngine engine = ExecutionEngine.auto,
Starts bounded pull-based batch production on a native worker.
At most capacity frames wait in the native channel. The worker never
invokes Dart callbacks; consumers explicitly call BatchStream.poll.
Implementation
BatchStream batchStreamSync({
int batchRows = 65536,
int capacity = 2,
ExecutionEngine engine = ExecutionEngine.auto,
}) {
_validateBatchStreamLimits(batchRows, capacity);
final lease = _owner.lease('LazyFrame');
try {
return _runtime._adoptBatchStream(
_runtime._client.invokeSync('lazyBatchStream', {
'input': lease.handle.toString(),
'batchRows': batchRows,
'capacity': capacity,
'engine': engine.wireName,
}),
);
} finally {
lease.end();
}
}