Метод runZoned< R>
- R body( ),
- {Директория createDirectory( )?,
- Директория getCurrentDirectory( )?,
- void setCurrentDirectory( )?,
- Директория getSystemTempDirectory( )?,
- Файл createFile( )?,
-
Будущее<
СтатистикаФайла> stat( )?, - СтатистикаФайла statSync( )?,
-
Будущее<
Булево> fseIdentical( )?, - Булево fseIdenticalSync( )?,
-
Будущее<
ТипЭлементаФайловойСистемы> fseGetType( )?, - ТипЭлементаФайловойСистемы fseGetTypeSync( )?,
-
Поток<
СобытиеФайловойСистемы> fsWatch( )?, - Булево fsWatchIsSupported( )?,
- Ссылка createLink( )?,
-
Будущее<
Сокет> socketConnect( - динамический,
- ЦелоеЧисло,
- {динамический sourceAddress,
- ЦелоеЧисло sourcePort,
- Продолжительность? timeout}
-
Будущее<
ЗадачаПодключения< Сокет>> socketStartConnect( - динамический,
- ЦелоеЧисло,
- {динамический sourceAddress,
- ЦелоеЧисло sourcePort}
-
Будущее<
СерверныйСокет> serverSocketBind( - динамический,
- ЦелоеЧисло,
- {ЦелоеЧисло backlog,
- Булево shared,
- Булево v6Only}
- СтандартныйВвод stdin( )?,
- СтандартныйВывод stdout( )?,
- СтандартныйВывод stderr( )?}
Выполняет body в новой зоне с предоставленными переопределениями.
См. документацию по соответствующим методам IOOverrides для информации о том, что делают необязательные аргументы.
Реализация
static R runZoned<R>(R body(),
{
// Directory
Directory Function(String)? createDirectory,
Directory Function()? getCurrentDirectory,
void Function(String)? setCurrentDirectory,
Directory Function()? getSystemTempDirectory,
// File
File Function(String)? createFile,
// FileStat
Future<FileStat> Function(String)? stat,
FileStat Function(String)? statSync,
// FileSystemEntity
Future<bool> Function(String, String)? fseIdentical,
bool Function(String, String)? fseIdenticalSync,
Future<FileSystemEntityType> Function(String, bool)? fseGetType,
FileSystemEntityType Function(String, bool)? fseGetTypeSync,
// _FileSystemWatcher
Stream<FileSystemEvent> Function(String, int, bool)? fsWatch,
bool Function()? fsWatchIsSupported,
// Link
Link Function(String)? createLink,
// Socket
Future<Socket> Function(dynamic, int,
{dynamic sourceAddress, int sourcePort, Duration? timeout})?
socketConnect,
Future<ConnectionTask<Socket>> Function(dynamic, int,
{dynamic sourceAddress, int sourcePort})?
socketStartConnect,
// ServerSocket
Future<ServerSocket> Function(dynamic, int,
{int backlog, bool v6Only, bool shared})?
serverSocketBind,
// Standard Streams
Stdin Function()? stdin,
Stdout Function()? stdout,
Stdout Function()? stderr}) {
IOOverrides overrides = new _IOOverridesScope(
// Directory
createDirectory,
getCurrentDirectory,
setCurrentDirectory,
getSystemTempDirectory,
// File
createFile,
// FileStat
stat,
statSync,
// FileSystemEntity
fseIdentical,
fseIdenticalSync,
fseGetType,
fseGetTypeSync,
// _FileSystemWatcher
fsWatch,
fsWatchIsSupported,
// Link
createLink,
// Socket
socketConnect,
socketStartConnect,
// ServerSocket
serverSocketBind,
// Standard streams
stdin,
stdout,
stderr,
);
return _asyncRunZoned<R>(body, zoneValues: {_ioOverridesToken: overrides});
}
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-io/IOOverrides/runZoned.html