Выбор и запуск виртуальной машины (ZD)

Описание

В данной заметке описано как правильно выбрать и запускать виртуальные машины (ВМ) при работе с ZennoDroid.

Как ZennoDroid работает с виртуальными машинами (ВМ)?

При случайном выборе (когда в действии Выбрать не указано имя или индекс) ZennoDroid всегда выбирает рандомную, не занятую в этот момент ВМ.

Если вы хотите вручную выбрать машину, то вы должны самостоятельно контролировать, чтобы разные потоки не выбирали одновременно одну и ту же машину.

Рассмотрим на примере:

  • есть ВМ с именем Memu_1и два проекта, Проект1 и Проект2, которые работают с этой ВМ. Проект1 стартует раньше и “забирает” ВМ Memu_1себе. Затем запускается Проект2 и “видит”, что ВМ занята. Он подождёт 60 секунд и, если ВМ не освобождена, то завершится с ошибкой. Если же в течение этих 60 секунд Проект1 освободит ВМ, то второй проект “подберёт” ВМ и будет с ней работать.

  • то же самое произойдёт, если в проекте жёстко указано работать с конкретной ВМ и проект запускается в несколько потоков - поток, который стартовал раньше, займёт ВМ, а второй поток выбросит ошибку.

1. Выбор виртуальной машины

Прежде всего нужно выбрать ВМ, с которой будет работать текущий поток. Сделать это можно с помощью действия Выбрать в экшене Действия с виртуальной машиной.

Как правильно выбирать ВМ

В ProjectMaker выбирать ВМ не обязательно (но можно), т.к. программа работает с ВМ, которая выставлена по умолчанию (её можно изменить в настройках).

Самым простым вариантом будет случайный выбор ВМ.
Для этого в настройках действия Выбрать необходимо оставить пустым поле “Полное название или индекс”. А в полях для имени и индекса нужно указать переменные, куда сохранятся соответствующие данные.

При таком подходе ZennoDroid ищет среди всех доступных виртуальных машин, которые в данный момент не заняты.

Виртуальная машина, которая в настройках выбрана по умолчанию всегда считается занятой и ZennoDroid, при случайном выборе, будет её пропускать.
Если при работе в ProjectMaker Вы переключитесь (через экшен) на другую ВМ, то эта выбранная ВМ будет считаться машиной по умолчанию и теперь уже она будет игнорироваться.

2. Запуск виртуальной машины

После того, как ВМ была выбрана, её нужно запустить. Для этого используется действие Запустить\Перезапустить из экшена Действия с виртуальной машиной.


Полезные ссылки