Python share CPU time?
Steve Holden
steve at holdenweb.com
Sat Aug 12 16:39:12 EDT 2006
Yannick wrote:
> Thank you all for the detailled answers.
>
> What I would like to achieve is something like:
>
> # main loop
> while True:
> for robot in robots:
> robot.start()
> robot.join(0.2) # wait 200ms
> if robot.is_active():
> robot.stop()
> # run all the game physics, pause, frame/rate, etc...
>
> Unfortunately the stop() call doesn't exist in Python.
>
> By using a generator I would make the assumption that every robot is
> playing fair, and would yield often. But I cannot control this as
> eventually robots would be coded by third parties.
>
> Using Python scheduler would allow me to share time equally between
> each robot, but then I would loose the ability to have a main thread
> organizing everything.
>
I think the best way is to give each robot its own thread. That way the
interpreter will share time between each of the robots (whether or not
they sleep or yield) on a reasonably fair basis.
regards
Steve
--
Steve Holden +44 150 684 7255 +1 800 494 3119
Holden Web LLC/Ltd http://www.holdenweb.com
Skype: holdenweb http://holdenweb.blogspot.com
Recent Ramblings http://del.icio.us/steve.holden
More information about the Python-list
mailing list