IRC Logs for #circuits Thursday, 2016-08-25

*** Osso has joined #circuits00:01
*** ke4roh has joined #circuits00:31
ke4rohprologic: been doing a bunch of debugging in manager and worker to see if I can figure out what might be the problem with a worker calling another worker.  It looks like the generators pile up.02:19
ke4rohprologic: curious where the right place to un-pile them might be :)02:19
*** Osso has quit IRC02:39
*** robert_ has quit IRC02:47
prologicke4roh: are we really talking about Worker()s here or coroutines? :)03:51
prologicyielding from an event handler turns said event handler into a coro03:51
prologicIIRC the post you posted about on SO tries to turn start() into a coro03:51
prologicI'm not even sure if that works (edge case?)03:52
prologicWhat might work is if you fire an event in start() then inside another event use yield03:52
prologic*I think*03:52
prologicOH! Wait03:55
prologicd'oh :)03:55
prologicI see the extra yield self.call(task(...)) inside the "work function"03:56
prologicgah03:56
prologicthis needs more thought let me play with it03:56
Workstergah does not sounds like it's meant to be there :D04:08
Worksterdoes not sound*04:08
prologicke4roh: https://gist.github.com/prologic/ed709a76db4f1d23e14c8311ea4d20a304:15
prologicI've managed to get this to complete the factorial "work"04:15
prologicbut it gets stuck somewhere04:15
prologicCan you dig in further?04:16
prologicWorkster: overlooked in the design I believe; I can see no reason why coroutines should not be reentrant IHMO04:16
prologicspaceone: ^^^04:16
Worksterit's even driven i see no reason why not04:32
prologicwell actually...04:51
prologiccoros are not event driven :)04:51
prologicdifferent pattern/flow04:51
prologiceventing is more like fire and forget04:51
prologiccorous are more synchroized04:51
*** ke4roh has quit IRC07:52
*** ke4roh has joined #circuits07:53
*** cornbread-afk has joined #circuits08:35
*** ke4roh has quit IRC11:17
*** pdurbin has quit IRC12:19
*** pdurbin has joined #circuits12:20
*** ke4roh has joined #circuits12:25
*** Osso has joined #circuits13:09
*** ke4roh_ has joined #circuits14:02
*** ke4roh has quit IRC14:05
*** ke4roh__ has joined #circuits15:14
*** ke4roh_ has quit IRC15:17
ke4roh__prologic: thanks!  I will have a detailed look in a few hours.  Interrupted by $DAY_JOB.16:55
*** Coldblackice has quit IRC19:35
*** Coldblackice has joined #circuits19:57
spaceoneke4roh: prologic: the callback for a worker cannot be a corotine20:25
spaceonei could imagine that it somehow works if you fire another task event in the callback20:26
spaceonebut don't turn it into a coroutine20:27
ke4rohspaceone: are you saying the SO example is invalid?  http://stackoverflow.com/questions/39008685/how-can-i-make-a-worker-reentrant20:47
spaceonewell, 'invalid' not. but it just doesn't work currently with circuits20:47
ke4rohspaceone: I think you understand why it doesn't work better than I do :)20:48
spaceonewell, i spend 2 hours in debugging it but still have no way to fix it20:48
ke4rohspaceone: my drive time has come.  I will have to continue later.  I'll check logs in a few hours.20:48
ke4rohspaceone: thank you for that!20:48
spaceoneprologic: btw. why is Manager.__tasks a set and not a list? sets aren't ordered so the tasks are executed in a random order21:23
spaceonei don't get it working ....23:07
*** Osso has quit IRC23:07

Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!