@Override
	public VirtualMachine addVM(Connector cx, Map<String, Connector.Argument> args) {
		try {
			setCurrentVM(connectVM(cx, args));
			JdiEventHandler eventHandler = new JdiEventHandler(getCurrentVM(), globalEventHandler);
			eventHandler.start();
			eventHandler.setState(ThreadReference.THREAD_STATUS_NOT_STARTED, Causes.UNCLAIMED);
			eventHandlers.put(getCurrentVM(), eventHandler);
			vms.put(getCurrentVM().name(), getCurrentVM());
			connectors.put(getCurrentVM(), cx);
		}
		catch (VMDisconnectedException e) {
			Msg.error(this, "Virtual Machine is disconnected.");
			return null;
		}
		catch (Exception e) {
			Msg.error(this, "Could not connect Virtual Machine", e);
			return null;
		}
		return getCurrentVM();
	}
NB: can't use manager.connectedVMs, because technically, other things could be using the
JDI outside of this manager.
Ghidra/Debug/Debugger-jpda/src/main/java/ghidra/dbg/jdi/manager/impl/JdiManagerImpl.java