Promise<NetChannel<T, T>> d = Promises.defer(env, dispatcher);
TcpServer<T, T> server = new TcpServerSpec<T, T>(ZeroMQTcpServer.class)
.env(env).dispatcher(dispatcher).codec(codec)
.options(new ZeroMQServerSocketOptions()
.context(zmqCtx)
.listenAddresses(addrs)
.socketType(socketType))
.consume(d)
.get();