亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Python > 正文

Python多進程分塊讀取超大文件的方法

2020-01-04 17:32:52
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Python多進程分塊讀取超大文件的方法,涉及Python多進程操作與文件分塊讀取的相關技巧,需要的朋友可以參考下
 

本文實例講述了Python多進程分塊讀取超大文件的方法。分享給大家供大家參考,具體如下:

讀取超大的文本文件,使用多進程分塊讀取,將每一塊單獨輸出成文件

# -*- coding: GBK -*-import urlparseimport datetimeimport osfrom multiprocessing import Process,Queue,Array,RLock"""多進程分塊讀取文件"""WORKERS = 4BLOCKSIZE = 100000000FILE_SIZE = 0def getFilesize(file):  """    獲取要讀取文件的大小  """  global FILE_SIZE  fstream = open(file,'r')  fstream.seek(0,os.SEEK_END)  FILE_SIZE = fstream.tell()  fstream.close()def process_found(pid,array,file,rlock):  global FILE_SIZE  global JOB  global PREFIX  """    進程處理    Args:      pid:進程編號      array:進程間共享隊列,用于標記各進程所讀的文件塊結束位置      file:所讀文件名稱    各個進程先從array中獲取當前最大的值為起始位置startpossition    結束的位置endpossition (startpossition+BLOCKSIZE) if (startpossition+BLOCKSIZE)<FILE_SIZE else FILE_SIZE    if startpossition==FILE_SIZE則進程結束    if startpossition==0則從0開始讀取    if startpossition!=0為防止行被block截斷的情況,先讀一行不處理,從下一行開始正式處理    if 當前位置 <=endpossition 就readline    否則越過邊界,就從新查找array中的最大值  """  fstream = open(file,'r')  while True:    rlock.acquire()    print 'pid%s'%pid,','.join([str(v) for v in array])    startpossition = max(array)          endpossition = array[pid] = (startpossition+BLOCKSIZE) if (startpossition+BLOCKSIZE)<FILE_SIZE else FILE_SIZE    rlock.release()    if startpossition == FILE_SIZE:#end of the file      print 'pid%s end'%(pid)      break    elif startpossition !=0:      fstream.seek(startpossition)      fstream.readline()    pos = ss = fstream.tell()    ostream = open('/data/download/tmp_pid'+str(pid)+'_jobs'+str(endpossition),'w')    while pos<endpossition:      #處理line      line = fstream.readline()      ostream.write(line)      pos = fstream.tell()    print 'pid:%s,startposition:%s,endposition:%s,pos:%s'%(pid,ss,pos,pos)    ostream.flush()    ostream.close()    ee = fstream.tell()  fstream.close()def main():  global FILE_SIZE  print datetime.datetime.now().strftime("%Y/%d/%m %H:%M:%S")   file = "/data/pds/download/scmcc_log/tmp_format_2011004.log"  getFilesize(file)  print FILE_SIZE  rlock = RLock()  array = Array('l',WORKERS,lock=rlock)  threads=[]  for i in range(WORKERS):    p=Process(target=process_found, args=[i,array,file,rlock])    threads.append(p)  for i in range(WORKERS):    threads[i].start()  for i in range(WORKERS):    threads[i].join()  print datetime.datetime.now().strftime("%Y/%d/%m %H:%M:%S") if __name__ == '__main__':  main()

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
98精品国产自产在线观看| 国产一级揄自揄精品视频| 欧美黑人一区二区三区| 欧洲亚洲免费视频| 91久久久精品| 欧美资源在线观看| 国产婷婷成人久久av免费高清| 色悠悠久久久久| 久久精品国产一区二区三区| 国产综合视频在线观看| 97avcom| 欧美肥老太性生活视频| 日韩日本欧美亚洲| 成人黄色av播放免费| 韩日欧美一区二区| 亚洲精选一区二区| 日韩免费av在线| 亚洲精品免费av| 亚洲精品电影网在线观看| 一区二区三区无码高清视频| 性欧美视频videos6一9| 日韩在线中文字幕| 国产不卡在线观看| 超薄丝袜一区二区| 日韩电视剧免费观看网站| 国产精品久久一区| 日韩激情av在线免费观看| 国产美女精品免费电影| 欧美成人手机在线| 91精品国产乱码久久久久久久久| 日本国产欧美一区二区三区| 青青久久av北条麻妃黑人| 17婷婷久久www| 亚洲一区中文字幕在线观看| 亚洲aⅴ男人的天堂在线观看| 精品一区二区三区三区| 精品亚洲va在线va天堂资源站| 国产亚洲精品久久| 国产美女精彩久久| 国产精品极品美女在线观看免费| 亚洲欧洲激情在线| 97人人爽人人喊人人模波多| 日本中文字幕不卡免费| 欧美伦理91i| 久久人人爽人人爽人人片av高请| 国产精品一区二区三| 久色乳综合思思在线视频| 久久久久久久久久国产| 热99精品里视频精品| 国产日韩欧美在线看| 亚洲free嫩bbb| 亚洲新声在线观看| 日韩中文字幕在线精品| 欧美激情区在线播放| 久久不射热爱视频精品| 日韩精品在线观看一区二区| 久久国产色av| 亚洲福利在线播放| 精品一区二区亚洲| 欧美在线xxx| 亚洲淫片在线视频| 国产精品一区二区在线| 97视频网站入口| 91免费欧美精品| 国产精品久久婷婷六月丁香| 欧美成人精品xxx| 亚洲激情国产精品| 色综合影院在线| 北条麻妃在线一区二区| xvideos亚洲人网站| 国产成人精品综合久久久| 97国产精品人人爽人人做| 三级精品视频久久久久| 久久九九精品99国产精品| 久久的精品视频| 日本午夜在线亚洲.国产| 色偷偷偷综合中文字幕;dd| 久久在线免费观看视频| 亚洲第一视频网| 美女扒开尿口让男人操亚洲视频网站| 久久久久久成人精品| 国产欧美一区二区三区视频| 成人av资源在线播放| 亚洲国产美女久久久久| 亚洲日本中文字幕| 97人人模人人爽人人喊中文字| 成人欧美一区二区三区在线湿哒哒| 国产激情视频一区| 国产精品男人的天堂| 中文字幕av一区二区三区谷原希美| 一本色道久久综合狠狠躁篇怎么玩| 国产一区二区三区视频在线观看| 欧美午夜无遮挡| 高清一区二区三区日本久| 亚洲丝袜av一区| 97香蕉超级碰碰久久免费的优势| 国产亚洲激情视频在线| 国产乱人伦真实精品视频| 日本国产欧美一区二区三区| 国产精品老女人视频| 日本亚洲精品在线观看| 欧美多人乱p欧美4p久久| 欧美日韩中文字幕在线| 久久精品亚洲精品| 91精品国产综合久久久久久久久| 91av视频在线| 亚洲欧美国产日韩天堂区| 久久久久久久成人| 日韩一区视频在线| 成人综合网网址| 国产精品视频网| 伊人久久久久久久久久久久久| 国产午夜精品美女视频明星a级| 91在线|亚洲| 国产69久久精品成人| 亚洲精品国产精品自产a区红杏吧| 日韩视频免费中文字幕| 国产精品欧美一区二区三区奶水| 国产亚洲日本欧美韩国| 亚洲精品国精品久久99热一| 九九久久精品一区| 国产精品吴梦梦| 欧美日韩裸体免费视频| 国产日韩在线看| 欧美日韩国产成人| 日韩中文字幕亚洲| 91精品久久久久久久久久久久久久| 欧美日韩性视频| 亚洲成人网久久久| 亚洲一区制服诱惑| 上原亚衣av一区二区三区| 国产自摸综合网| 欧美日韩成人精品| 亚洲精品久久视频| 国产一区二区久久精品| 国产精品久久激情| 日本亚洲欧洲色| 欧美精品www| 国产精品美女999| 精品高清一区二区三区| 久久久精品美女| 久久久久久一区二区三区| 日韩av免费在线| 亚洲免费一级电影| 色悠久久久久综合先锋影音下载| 亚洲国产精品国自产拍av秋霞| 992tv在线成人免费观看| 日韩在线激情视频| 欧美极品美女电影一区| 555www成人网| 亚洲色图欧美制服丝袜另类第一页| 国产精品你懂得| 国产自产女人91一区在线观看| 91精品国产综合久久久久久蜜臀| 日韩久久精品电影| 亚洲人成人99网站| 国产精品444| 国产精品欧美日韩久久| 亚洲福利在线看| 亚洲国产成人精品一区二区| 欧美精品在线免费观看| 92福利视频午夜1000合集在线观看| 精品国产91乱高清在线观看| 欧美性猛交xxxxx免费看|