<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Tasks and Futures and Concurrency in the IMVU Client</title>
	<atom:link href="http://chadaustin.me/2008/05/tasks-and-futures-and-concurrency-in-the-imvu-client/feed/" rel="self" type="application/rss+xml" />
	<link>http://chadaustin.me/2008/05/tasks-and-futures-and-concurrency-in-the-imvu-client/</link>
	<description></description>
	<lastBuildDate>Tue, 06 Mar 2012 21:20:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Feyan</title>
		<link>http://chadaustin.me/2008/05/tasks-and-futures-and-concurrency-in-the-imvu-client/comment-page-1/#comment-110284</link>
		<dc:creator>Feyan</dc:creator>
		<pubDate>Tue, 23 Aug 2011 00:31:54 +0000</pubDate>
		<guid isPermaLink="false">http://aegisknight.org/new/2008/05/15/tasks-and-futures-and-concurrency-in-the-imvu-client/#comment-110284</guid>
		<description>i want to know just one thing, is that where to put these commands and how to use them</description>
		<content:encoded><![CDATA[<p>i want to know just one thing, is that where to put these commands and how to use them</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: TinaT</title>
		<link>http://chadaustin.me/2008/05/tasks-and-futures-and-concurrency-in-the-imvu-client/comment-page-1/#comment-15487</link>
		<dc:creator>TinaT</dc:creator>
		<pubDate>Wed, 09 Dec 2009 19:44:26 +0000</pubDate>
		<guid isPermaLink="false">http://aegisknight.org/new/2008/05/15/tasks-and-futures-and-concurrency-in-the-imvu-client/#comment-15487</guid>
		<description>All i want to know is if i can run more then one window for imvu. I have 2 accounts and like to be on both. But i&#039;ve found no way to do so =(</description>
		<content:encoded><![CDATA[<p>All i want to know is if i can run more then one window for imvu. I have 2 accounts and like to be on both. But i&#8217;ve found no way to do so =(</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: anonymous</title>
		<link>http://chadaustin.me/2008/05/tasks-and-futures-and-concurrency-in-the-imvu-client/comment-page-1/#comment-4471</link>
		<dc:creator>anonymous</dc:creator>
		<pubDate>Sat, 11 Oct 2008 15:34:46 +0000</pubDate>
		<guid isPermaLink="false">http://aegisknight.org/new/2008/05/15/tasks-and-futures-and-concurrency-in-the-imvu-client/#comment-4471</guid>
		<description>.....if you don&#039;t mind bytecode hacking.

Very simple in fact (excuse the screwed indentation on the blog):

from byteplay import *
yielder_code = [(LOAD_GLOBAL, &#039;True&#039;), (YIELD_VALUE, None)]
def hack_func(teh_func,params):
    c = Code.from_code(teh_func.func_code)
    for i in xrange(len(c.code)):
        if c.code[i][0]==SetLineno:
           c.code.insert(i+1,yielder_code[0])
           c.code.insert(i+2,yielder_code[1])
    teh_func.func_code = c.to_code()
    return teh_func(*params)
tasks          = []
def add_task(task,params=()):
    global tasks
    tasks.append(hack_func(task,params))
while True:
   for task in tasks:
       try:
          task.next()
       except StopIteration, e:
          tasks.remove(task)</description>
		<content:encoded><![CDATA[<p>&#8230;..if you don&#8217;t mind bytecode hacking.</p>
<p>Very simple in fact (excuse the screwed indentation on the blog):</p>
<p>from byteplay import *<br />
yielder_code = [(LOAD_GLOBAL, 'True'), (YIELD_VALUE, None)]<br />
def hack_func(teh_func,params):<br />
    c = Code.from_code(teh_func.func_code)<br />
    for i in xrange(len(c.code)):<br />
        if c.code[i][0]==SetLineno:<br />
           c.code.insert(i+1,yielder_code[0])<br />
           c.code.insert(i+2,yielder_code[1])<br />
    teh_func.func_code = c.to_code()<br />
    return teh_func(*params)<br />
tasks          = []<br />
def add_task(task,params=()):<br />
    global tasks<br />
    tasks.append(hack_func(task,params))<br />
while True:<br />
   for task in tasks:<br />
       try:<br />
          task.next()<br />
       except StopIteration, e:<br />
          tasks.remove(task)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: aegisknight</title>
		<link>http://chadaustin.me/2008/05/tasks-and-futures-and-concurrency-in-the-imvu-client/comment-page-1/#comment-4470</link>
		<dc:creator>aegisknight</dc:creator>
		<pubDate>Fri, 01 Aug 2008 13:55:00 +0000</pubDate>
		<guid isPermaLink="false">http://aegisknight.org/new/2008/05/15/tasks-and-futures-and-concurrency-in-the-imvu-client/#comment-4470</guid>
		<description>I presented the ones linked at the bottom of the post.</description>
		<content:encoded><![CDATA[<p>I presented the ones linked at the bottom of the post.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: egometry</title>
		<link>http://chadaustin.me/2008/05/tasks-and-futures-and-concurrency-in-the-imvu-client/comment-page-1/#comment-4469</link>
		<dc:creator>egometry</dc:creator>
		<pubDate>Wed, 30 Jul 2008 22:39:19 +0000</pubDate>
		<guid isPermaLink="false">http://aegisknight.org/new/2008/05/15/tasks-and-futures-and-concurrency-in-the-imvu-client/#comment-4469</guid>
		<description>I demand more.  Where are the more elaborate examples with Future objects from the brownbag?</description>
		<content:encoded><![CDATA[<p>I demand more.  Where are the more elaborate examples with Future objects from the brownbag?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

