On Fri, Sep 29, 2017 at 2:38 AM, Bachmair Florian - flexSolution GmbH < florian.bachm...@flexsolution.eu> wrote:
> Hi! > > When I stop my application in roughly 1 out of 20 tries I get this error: > > Assertion failed: pfd.revents & POLLIN (src/signaler.cpp:243) (here is > the corresponding line of code: https://github.com/zeromq/ > libzmq/blob/v4.2.0/src/signaler.cpp#L243 ) > > Stack trace of thread 8576: > #0 0x00007f56d22a78a0 raise (libc.so.6) > #1 0x00007f56d22a8f09 abort (libc.so.6) > #2 0x00007f5686c7cc99 n/a (/home/flex/core-1.5.0- > SNAPSHOT/lib/native/libzmq.so.5) > #3 0x00007f56d26255a0 _IO_2_1_stderr_ (libc.so.6) > > > Before I stop my application I disconnect from ALL publishers with > > zsock_disconnect(subscriber, "tcp://%s:%d", c_ip, port); > > after that I destroy my sockets and actors > > zsock_destroy(&publisher); > zsock_destroy(&req); > zsock_destroy(&subscriber); > > > //this is never finished > zactor_destroy(&actorRep); > zactor_destroy(&actorSub); > > > I guess its a problem with stopping the actors, how do I propperly stop > this actor? > You need to send it a message telling it to quit. > void sub_actor(zsock_t *pipe, void *args) { > zsock_signal(pipe, 0); > while (!zsys_interrupted) { > char* topic; > char* timestamp; > char* value; > char* id; > zsock_recv(subscriber, "ssss", &topic, ×tamp, &id, &value); > > onMessageReceived(topic, timestamp, id,value); > } > } > > Thanks Florian > > > > > _______________________________________________ > zeromq-dev mailing list > zeromq-dev@lists.zeromq.org > https://lists.zeromq.org/mailman/listinfo/zeromq-dev > >
_______________________________________________ zeromq-dev mailing list zeromq-dev@lists.zeromq.org https://lists.zeromq.org/mailman/listinfo/zeromq-dev