Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗dtSpIsPrm 109 of 224 menu
◀ ▶

Практика изолятов в Dart

Запустите изолят, который сразу шлет строку "ok". Выведите сообщение и закройте порт приема.

Сделайте обмен: основной изолят отправляет строку "data", второй возвращает ее без изменений. Выведите ответ.

Передайте список из порта ответа и строки "line". Второй изолят должен вернуть длину строки. Выведите число.

Дан следующий код:

import 'dart:isolate'; void main() async { var receive = ReceivePort(); await Isolate.spawn(entry, receive.sendPort); } void entry(SendPort mainSend) { var inbox = ReceivePort(); mainSend.send(inbox.sendPort); inbox.listen((message) {}); }

Допишите программу: отправьте строку "xy" с портом для ответа, верните сумму codeUnitAt по обоим символам и выведите результат.

Запустите два последовательных обмена с одной точкой входа: сначала строка "a" и ответ 1, затем строка "bc" и ответ 2. Выведите оба числа.

Дан следующий код:

import 'dart:isolate'; void main() async { var receive = ReceivePort(); await Isolate.spawn(worker, receive.sendPort); var replyPort = ReceivePort(); } void worker(SendPort mainSend) { var inbox = ReceivePort(); mainSend.send(inbox.sendPort); inbox.listen((message) { if (message is List) { var reply = message[0] as SendPort; var text = message[1] as String; } }); }

Завершите обмен: отправьте список с replyPort.sendPort и строкой "dart", верните длину строки, выведите число и закройте оба порта приема.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить