import multiprocessing from multiprocessing import Pool class pdf_gen(): def __init__(self): pdf = self.pdf = FPDF() pdf.set_auto_page_break(True,0.1) def get_data_from_mysql(self) : pdf = self.pdf # connection is established and result is stored in 'res'. dup = [] dup.insert(0,res) z = tuple(dup) return z def mysql_to_pdf_data(self,*result) : try : pdf = self.pdf # Entered data need to be in pdf finally : pdf.output('save_pdf.pdf','F') def main() : pdf = pdf_gen() recover_data = pdf.get_data_from_mysql() pool = multiprocessing.Pool(multiprocessing.cpu_count()) pool.map(pdf.mysql_to_pdf_data,recover_data)