I think we lack a recv function that delivers data as a fresh blob that can be freed using the standard free() method. I.e. like zmq_msg_init_data but for receipt, not sending...
On Sat, Sep 28, 2013 at 11:48 PM, Trevor Bernard <trevor.bern...@gmail.com> wrote: > Hi guys, > > I messing around with JNI and libzmq and I was wondering if there was > a way to avoid the memcpy? > > JNIEXPORT > jobject JNICALL > Java_org_zeromq_jni_ZMQ_zmq_1recv__JI (JNIEnv *env, jclass c, jlong > socket, jint flags) > { > zmq_msg_t msg; > zmq_msg_init (&msg); > zmq_recvmsg ((void *) socket, &msg, flags); > int size = zmq_msg_size (&msg); > void *data = malloc(size); > memcpy(data, zmq_msg_data (&msg), size); > zmq_msg_close(&msg); > return env->NewDirectByteBuffer(data, size); > } > > Cheers, > > Trev > _______________________________________________ > zeromq-dev mailing list > zeromq-dev@lists.zeromq.org > http://lists.zeromq.org/mailman/listinfo/zeromq-dev _______________________________________________ zeromq-dev mailing list zeromq-dev@lists.zeromq.org http://lists.zeromq.org/mailman/listinfo/zeromq-dev