多进程
多线程和多进程区别
多进程的优点:
多线程的优点:
1.文件分块类
class PartitionFile(object):
def __init__(self, fileName, jobsNum):
self.fileName = fileName
self.blockNum = jobsNum
def partion(self):
fd = open(self.fileName, 'r')
fd.seek(0, 2) # 移动文件指针到文件尾,用于获取文件大小
fileSize = fd.tell() # 获取文件字符数
Pos_list = [] # 指针坐标,数组
blockSize = int(fileSize/self.blockNum)
start_Pos = 0 # 文件初始指针
for i in range(self.blockNum):
if i == self.blockNum-1:
end_Pos = fileSize-1 # 最后一个文件区块为文件结尾
Pos_list.append((start_Pos, end_Pos))
break
end_Pos = start_Pos+blockSize-1 # 均匀分配每个区块
Pos_list.append((start_Pos, end_Pos))
start_Pos = end_Pos+1 # 下一个区块的开始坐标
fd.close()
return Pos_list2.读取进程
3.排序进程
4.封装后的函数
5.性能测试
6.源代码
7.参考
Last updated