[prev in list] [next in list] [prev in thread] [next in thread]
List: python-list
Subject: collect data using threads
From: Qiangning Hong <hongqn () gmail ! com>
Date: 2005-06-14 9:40:19
Message-ID: 42AEA603.5030903 () gmail ! com
[Download RAW message or body]
A class Collector, it spawns several threads to read from serial port.
Collector.get_data() will get all the data they have read since last
call. Who can tell me whether my implementation correct?
class Collector(object):
def __init__(self):
self.data = []
spawn_work_bees(callback=self.on_received)
def on_received(self, a_piece_of_data):
"""This callback is executed in work bee threads!"""
self.data.append(a_piece_of_data)
def get_data(self):
x = self.data
self.data = []
return x
I am not very sure about the get_data() method. Will it cause data lose
if there is a thread is appending data to self.data at the same time?
Is there a more pythonic/standard recipe to collect thread data?
--
Qiangning Hong
_______________________________________________
< Those who can, do; those who can't, simulate. >
-----------------------------------------------
\ ___-------___
\ _-~~ ~~-_
\ _-~ /~-_
/^\__/^\ /~ \ / \
/| O|| O| / \_______________/ \
| |___||__| / / \ \
| \ / / \ \
| (_______) /______/ \_________ \
| / / \ / \
\ \^\\ \ / \ /
\ || \______________/ _-_ //\__//
\ ||------_-~~-_ ------------- \ --/~ ~\ || __/
~-----||====/~ |==================| |/~~~~~
(_(__/ ./ / \_\ \.
(_(___/ \_____)_)
--
http://mail.python.org/mailman/listinfo/python-list
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic