multiprocessing sem_open 3770

具体错误描述:
ImportError: This platform lacks a functioning sem_open implementation, therefore, the required synchronization primitives needed will not function, see issue 3770.

此类错误的原因:
1、在安装python时没有挂载/dev/shm 或者 对于 /dev/shm没有写的权限,此时在安装python时不能够开启 sem_open。

此类问题的解决方法:

1、需要root权限部分的操作:

    修改/etc/fstab 增加: tmpfs /dev/shm tmpfs defaults 0 0
    mount /dev/shm
    chmod 777 /dev/shm

2、不需要root权限部分的操作:

    1、重新安装python
        从 python 官网 下载源码,解压;
        进入解压后的python文件夹;
        执行: ./configure --prefix=/home/work/tmp/houjincheng/Python27
        make && make install

    2、重新安装pip
        安装 setuptools:
            wget --no-check-certificate http://pypi.python.org/packages/source/s/setuptools/setuptools-2.0.tar.gz
            tar -xzvf setuptools-2.0.tar.gz
            cd setuptools-2.0
            /home/work/tmp/houjincheng/python27/bin/python setup.py install
        安装pip:
            wget --no-check-certificate https://pypi.python.org/packages/41/27/9a8d24e1b55bd8c85e4d022da2922cb206f183e2d18fee4e320c9547e751/pip-8.1.1.tar.gz#md5=6b86f11841e89c8241d689956ba99ed7
            tar -xzf pip-8.1.1.tar.gz
            cd pip-8.1.1
            /home/liudiwei/software/python27/bin/python setup.py install

所有工作完成,此时可以搜索一个multiprocessing 中使用 Pool的代码,运行,看看运行结果。

你可能感兴趣的:(multiprocessing sem_open 3770)