# -*- coding: utf8 -*-
import datetime
from multiprocessing import Process, Manager, RLock
from itertools import islice
"""
多进程分块读取文件
"""
class File_Manager(object):
def func_countfileline(self, filepath):
"""
计算文件的总行数
:param filepath: 文件
:return:int,文件总行数
"""
num =1
thefile=open(filepath, 'rb')
while True:
buffer = thefile.read(102400)
if not buffer:
break
num += buffer.count('\n')
thefile.close()
return num
def process_found_new(self, FILE_COUNT, pid, result, file, rlock):
"""
对文件内容进行统计,每次读取最多2000行
:param FILE_COUNT: 文件读取的起始行
:param pid: 进程id
:param result: dict格式,处理的结果
:param file: 文件
:par