I am implementing a backend python script that updates the database.
It uses threadpool(http://snippets.dzone.com/posts/show/4425#related).
Threadpool size is 3.  When records are returned, eg. 10 records, 3
threads are created, then the threads update the database, but doesn't
seem to do
task_done().  Three threads that were created initially, just hangs.
I am running FC7 with python2.5.

class ProfileManager(models.Manager):
        def not_confirmed():

        c = connection.cursor()
        c.execute("select * from profile_profile where status
='waiting confirmation'")
        return c.fetchall()

backend_threaded.py:

#! /usr/bin/env python
from apps.utils.threadpool import *
#Pyhton ThreadPool: http://snippets.dzone.com/posts/show/4425#related
from time import sleep
import datetime

from os import environ
environ['DJANGO_SETTINGS_MODULE'] = "settings"
from settings import *
from apps.profile.models import *

pool = Pool(3)

@threadpool(pool)
def process(i):
    print 'threadpool %i enter' % i

    p = Profile.objects.get(id=i)
    p.status ="sent"
    p.save()

    print 'threadpool %i exit' % i

def main():

    rs = Profile.objects.not_confirmed()
    print rs
    for l in rs:
        process(l[0])
    pool.join()

if __name__=="__main__":
        main()


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to