mirror of
https://github.com/gsi-upm/senpy
synced 2024-11-22 00:02:28 +00:00
Fix multiprocessing tests in python2.7
Closes #28 for python 2. Apparently, process pools are not contexts in python 2.7. On the other hand, in py2 you cannot pickle instance methods, so you have to implement Pool tasks as independent functions.
This commit is contained in:
parent
ef40bdb545
commit
e582ef07d4
@ -3,13 +3,15 @@ from senpy.plugins import AnalysisPlugin
|
||||
import multiprocessing
|
||||
|
||||
|
||||
class AsyncPlugin(AnalysisPlugin):
|
||||
def _train(self, process_number):
|
||||
def _train(process_number):
|
||||
return process_number
|
||||
|
||||
|
||||
class AsyncPlugin(AnalysisPlugin):
|
||||
def _do_async(self, num_processes):
|
||||
with multiprocessing.Pool(processes=num_processes) as pool:
|
||||
values = pool.map(self._train, range(num_processes))
|
||||
pool = multiprocessing.Pool(processes=num_processes)
|
||||
values = pool.map(_train, range(num_processes))
|
||||
|
||||
return values
|
||||
|
||||
def activate(self):
|
||||
|
Loading…
Reference in New Issue
Block a user