标签: pool

boost :: pool <> :: malloc和boost :: pool <> :: ordered_malloc之间有什么区别,什么时候应该使用boost :: pool <> :: ordered_malloc?

我正在使用boost.pool,但我不知道何时使用boost::pool<>::mallocboost::pool<>::ordered_malloc

所以,

  1. 什么是boost::pool<>::mallocboost::pool<>::ordered_malloc?的区别?

  2. 我应该什么时候使用boost::pool<>::ordered_malloc

boost pool

15
推荐指数
1
解决办法
2056
查看次数

Python NotImplementedError:池对象不能在进程之间传递

当页面附加到页面列表时,我正在尝试传递工作,但我的代码输出返回NotImplementedError.这是我正在尝试做的代码:

码:

from multiprocessing import Pool, current_process
import time
import random
import copy_reg
import types
import threading


class PageControler(object):
    def __init__(self):
        self.nProcess = 3
        self.pages = [1,2,3,4,5,6,7,8,9,10]
        self.manageWork()


    def manageWork(self):

        self.pool = Pool(processes=self.nProcess)

        time.sleep(2)
        work_queue = threading.Thread(target=self.modifyQueue)
        work_queue.start()

        #pool.close()
        #pool.join()

    def deliverWork(self):    
        if self.pages != []:
            pag = self.pages.pop()
            self.pool.apply_async(self.myFun)


    def modifyQueue(self):
        t = time.time()
        while (time.time()-t) < 10:
            time.sleep(1)
            self.pages.append(99)
            print self.pages
            self.deliverWork()

    def myFun(self):
        time.sleep(2)


if __name__ == '__main__':
    def _pickle_method(m):
        if m.im_self is None:
            return getattr, (m.im_class, …
Run Code Online (Sandbox Code Playgroud)

python pool multiprocessing

15
推荐指数
1
解决办法
5972
查看次数

Python:使用多处理池时使用队列写入单个文件

我有成千上万的文本文件,我想以各种方式解析.我想将输出保存到单个文件而不会出现同步问题.我一直在使用多处理池来节省时间,但我无法弄清楚如何组合池和队列.

以下代码将保存infile名称以及文件中连续"x"的最大数量.但是,我希望所有进程将结果保存到同一个文件,而不是像我的示例中那样保存到不同的文件.任何有关这方面的帮助将不胜感激.

import multiprocessing

with open('infilenamess.txt') as f:
    filenames = f.read().splitlines()

def mp_worker(filename):
 with open(filename, 'r') as f:
      text=f.read()
      m=re.findall("x+", text)
      count=len(max(m, key=len))
      outfile=open(filename+'_results.txt', 'a')
      outfile.write(str(filename)+'|'+str(count)+'\n')
      outfile.close()

def mp_handler():
    p = multiprocessing.Pool(32)
    p.map(mp_worker, filenames)

if __name__ == '__main__':
    mp_handler()
Run Code Online (Sandbox Code Playgroud)

python queue pool multiprocessing

15
推荐指数
2
解决办法
1万
查看次数

将 Python 池与上下文管理器一起使用或关闭并加入

Python文档的示例格式为

with Pool() as p:
    p.map(do)
Run Code Online (Sandbox Code Playgroud)

但我看到很多人使用下面的格式。

p = Pool()
p.map(do)
p.close()
p.join()
Run Code Online (Sandbox Code Playgroud)

哪个更受欢迎?

python pool

15
推荐指数
1
解决办法
3153
查看次数

如何创建对象池以便能够借用和返回对象

我想知道,是否可以创建一个对象池?所以我可以从池中取出一个对象,一旦我完成了工作,我就可以将它放入池中.

java pool

14
推荐指数
1
解决办法
2万
查看次数

在`Rack :: Session :: Cookie`上使用`Rack :: Session :: Pool`

Rack :: Session :: PoolRack :: Session :: Cookie的不同用例有哪些?

据我所知(如果我错了,请纠正我):

  • Cookie所有会话密钥:值对直接存储在cookie中(编组)
  • Pool 只在cookie中存储一个id,并在其中维护会话哈希的其余部分 @pool

那么:选择一个而不是另一个的含义/原因是什么?什么@pool?为什么Pool需要公开不同的公共接口Cookie?为什么文档如此缺乏?

ruby cookies session rack pool

14
推荐指数
1
解决办法
2074
查看次数

为什么我们需要在ConnectionString中设置Min池大小

对于SQL连接池,为什么我们需要设置最小池大小?由于连接将保存在连接池中并重用,为什么我们需要保持最小池大小指定的实时连接?谢谢.

c# connection sqlconnection pool

14
推荐指数
1
解决办法
2万
查看次数

处理内存池中的碎片?

假设我有一个带有构造函数的内存池对象,该构造函数获取指向大块内存ptr和大小为N的指针.如果我做了许多随机分配和各种大小的解除分配,我可以获得内存,使得我无法分配M字节对象在内存中连续存在,即使可能有很多空闲!与此同时,我无法压缩内存,因为这会导致消费者的悬空指针.在这种情况下如何解决碎片问题?

c++ memory pool fragmentation

13
推荐指数
2
解决办法
2970
查看次数

不能使用python的多处理Pool.apply_async()来挑选<type'instancemethod'>

我想运行这样的东西:

from multiprocessing  import Pool
import time
import random

class Controler(object):
    def __init__(self):
        nProcess = 10
        pages = 10
        self.__result = []
        self.manageWork(nProcess,pages)

def BarcodeSearcher(x):
    return x*x

def resultCollector(self,result):
    self.__result.append(result)

def manageWork(self,nProcess,pages):
    pool = Pool(processes=nProcess)
    for pag in range(pages):
        pool.apply_async(self.BarcodeSearcher, args = (pag, ), callback = self.resultCollector)

    print self.__result

if __name__ == '__main__':
    Controler()
Run Code Online (Sandbox Code Playgroud)

但代码导致错误:

   Exception in thread Thread-1:
Traceback (most recent call last):
  File "C:\Python26\lib\threading.py", line 522, in __bootstrap_inner
    self.run()
  File "C:\Python26\lib\threading.py", line 477, in run
    self.__target(*self.__args, **self.__kwargs)
  File …
Run Code Online (Sandbox Code Playgroud)

python pool multiprocessing

13
推荐指数
1
解决办法
1万
查看次数

Python与病毒的多处理

我正在尝试使用Python的pathos将计算指定到单独的进程中,以便使用多核处理器加速它.我的代码组织如下:

class:
   def foo(self,name):
    ...
    setattr(self,name,something)
    ...
   def boo(self):
      for name in list:
         self.foo(name)
Run Code Online (Sandbox Code Playgroud)

由于我在multiprocessing.Pool中遇到酸洗问题,我决定尝试使用pathos.我尝试过,如前几个主题中所述:

import pathos.multiprocessing
Run Code Online (Sandbox Code Playgroud)

但它导致错误:没有模块多处理 - 我在最新的病毒版本中找不到.

然后我尝试修改boo方法:

def boo(self):
 import pathos
 pathos.pp_map.pp_map(self.foo,list)
Run Code Online (Sandbox Code Playgroud)

现在没有抛出错误,但是foo不起作用 - 我的类的实例没有新的属性.请帮助我,因为在花了一天之后,我不知道接下来要去哪里.

python pool multiprocessing pathos

13
推荐指数
1
解决办法
2万
查看次数