2018-03-10 python multiprocessing 多线程

import sys,os,time

import multiprocessing as mp

bamfile = sys.argv[1]

#desDir = '/public0/nong/tcga_luad/bedgraph_test'
desDir = sys.argv[2]
os.system('mkdir -p ' + desDir)

bams = open(bamfile,'r').read().strip().split('\n')
cmd_filter = 'python3 '+ os.path.join(os.path.dirname(sys.argv[0]), '2.1_filter_chr.py')
def genomceCoverage(bam, outdir):

    bamname = os.path.basename(bam)
    graph = os.path.join(outdir,bamname ) + '.bedgraph'
    cmd = 'genomeCoverageBed -bg -ibam '+bam + ' -g /public0/nong/source/hg38.chrom.chr.sizes -split | ' + cmd_filter + ' >' + graph
    print(cmd)
    os.system(cmd)


pool = mp.Pool(8) #多线程, 以及线程数!
for bam in bams:
    t = pool.apply_async(genomceCoverage, (bam, desDir))
pool.close()
pool.join()

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容