[Qt-interest] Can two thread share a QAbstractSocket?
william.crocker at analog.com
william.crocker at analog.com
Wed May 12 18:54:05 CEST 2010
>
> 1. Not even a socket descriptor? I'm currently able to pass it through
> threads. This is related to the why now question.
>
> 2.How can I achieve the wanted behavior:
>
> A server (preferably udp) receives incoming client connections, and then
> spawns a thread that deals (receive all requests from that client and
> serves them in turn).
> The java is:
>
I start a thread from within QTcpServer::incomingConnection(int)
and pass that thread the file number. Once within that threads run
code I create the QTcpSocket object and ::setSocketDescriptor.
Works like a charm.
Bill
> public void run() {
> while (true) {
> Socket clientSocket = listener.accept();
> new ClientHandler(clientSocket);
> }
>
> -----
> ClientHandler
>
> public void run() {
> while (true) {
>
> String msg = receive();
> }
>
> http://code.google.com/p/javatcpchat/source/browse/trunk/src/server/ClientHandler.java
>
> 2010/5/12 Gabriele Kahlout <gabriele at mysimpatico.com
> <mailto:gabriele at mysimpatico.com>>
>
> interesting. Why not?
>
> 2010/5/12 Thiago Macieira <thiago at kde.org <mailto:thiago at kde.org>>
>
> Em Quarta-feira 12 Maio 2010, às 17:50:04, Gabriele Kahlout
> escreveu:
> > Hello,
> >
> > I am trying to have a (udp/tcp) server to pass sockets
> (socketdescriptor)
> > to another thread, which communicates with the client and
> authenticates
> > it. I'm having several issues, so I was wondering if the
> above could be
> > one of them.
>
> Answering the subject: no.
> --
> Thiago Macieira - thiago (AT) macieira.info
> <http://macieira.info> - thiago (AT) kde.org <http://kde.org>
> Senior Product Manager - Nokia, Qt Development Frameworks
> PGP/GPG: 0x6EF45358; fingerprint:
> E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
>
> _______________________________________________
> Qt-interest mailing list
> Qt-interest at trolltech.com <mailto:Qt-interest at trolltech.com>
> http://lists.trolltech.com/mailman/listinfo/qt-interest
>
>
>
>
> --
> Regards,
> K. Gabriele
>
> --- unchanged since 25/1/10 ---
> P.S. Unless a notification (LON), please reply either with an answer
> OR with " ACK" appended to this subject within 48 hours. Otherwise,
> I might resend.
> In(LON, this) ∨ In(48h, TimeNow) ∨ ∃x. In(x, MyInbox) ∧
> IsAnswerTo(x, this) ∨ (In(subject(this), subject(x)) ∧ In(ACK,
> subject(x)) ∧ ¬IsAnswerTo(x,this)) ⇒ ¬IResend(this).
>
> Also note that correspondence may be received only from specified a
> priori senders, or if the subject of this email ends with a code,
> eg. -LICHT01X, then also from senders whose reply contains it.
> ∀x. In(x, MyInbox) ⇒ In(senderAddress(x), MySafeSenderList) ∨ (∃y.
> In(y, subject(this) ) ∧ In(y,x) ∧ isCodeLike(y, -LICHT01X) ).
>
>
>
>
> --
> Regards,
> K. Gabriele
>
> --- unchanged since 25/1/10 ---
> P.S. Unless a notification (LON), please reply either with an answer OR
> with " ACK" appended to this subject within 48 hours. Otherwise, I might
> resend.
> In(LON, this) ∨ In(48h, TimeNow) ∨ ∃x. In(x, MyInbox) ∧ IsAnswerTo(x,
> this) ∨ (In(subject(this), subject(x)) ∧ In(ACK, subject(x)) ∧
> ¬IsAnswerTo(x,this)) ⇒ ¬IResend(this).
>
> Also note that correspondence may be received only from specified a
> priori senders, or if the subject of this email ends with a code, eg.
> -LICHT01X, then also from senders whose reply contains it.
> ∀x. In(x, MyInbox) ⇒ In(senderAddress(x), MySafeSenderList) ∨ (∃y. In(y,
> subject(this) ) ∧ In(y,x) ∧ isCodeLike(y, -LICHT01X) ).
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Qt-interest mailing list
> Qt-interest at trolltech.com
> http://lists.trolltech.com/mailman/listinfo/qt-interest
More information about the Qt-interest-old
mailing list