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) #多線程, 以及線程數(shù)!
for bam in bams:
    t = pool.apply_async(genomceCoverage, (bam, desDir))
pool.close()
pool.join()

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容