Ok, thank you! ==================================== Lars van Gemerden [email protected] +31 6 26 88 55 39 ====================================
On 24 mei 2013, at 15:15, Kristján Valur Jónsson <[email protected]> wrote: > Because channels are not queues. If there is no one waiting to receive, then > channel.send() blocks. Channels are “rendezvous points” where one tasklets > hands over a piece of data to the other. > the “preference” only matters if a transaction can take place. In this case, > if a receiver had been blocked on channel, then send would indeed not block. > > K > > From: [email protected] > [mailto:[email protected]] On Behalf Of lars van Gemerden > Sent: 24. maí 2013 09:36 > To: The Stackless Python Mailing List > Subject: Re: [Stackless] must be something simple > > > Hi, > > I must be mssing something basic; why does the following not print anything: > > channel = stackless.channel() > channel.preference = 1 > > def run(a): > print channel.send(a) > print channel.receive() > > if __name__ == "__main__": > > stackless.tasklet(run)("anything") > stackless.run() > > If with preference = 1 the send(..) returns immediately, why doesn't "print > channel.send(a)" print "None" or something and why is 'a' never received? > > Cheers, Lars > > > > ==================================== > Lars van Gemerden > [email protected] > +31 6 26 88 55 39 > ==================================== > _______________________________________________ > Stackless mailing list > [email protected] > http://www.stackless.com/mailman/listinfo/stackless
_______________________________________________ Stackless mailing list [email protected] http://www.stackless.com/mailman/listinfo/stackless
