Using Multi-Processing inside a class and its functions

Viewed 49

I am trying to use the multiprocessing inside a class but I keep on getting error.

What am I doing:

class A:
    
       def GetData(self,scripts,scriptcounter):
       
            if __name__ == '__main__':
                p = multiprocessing.Process(target=GetScriptsData,args=[scripts,scriptcounter]) 
                p.start()
                p.join(15)

                if p.is_alive():
                    print('Request Terminated as it exceeded the hard wait time.')
                    p.terminate()
                    p.join()

       def GetScriptsData(self,Scripts,ScriptStarter):
                   .....> This function calls the source to fetch data. 

Here, I am trying to get scripts data using multi-processing because sometimes my source response gets stuck. So, I am adding a cut-off time on the data download process.

The error I get is:

ipdb>  p = multiprocessing.Process(target=GetScriptsData,args=[scripts,scriptcounter])
*** SyntaxError: invalid syntax
OR
ipdb>  p = multiprocessing.Process(target=self.GetScriptsData,args=[scripts,scriptcounter])
*** SyntaxError: invalid syntax

I tried with self too but no success. Any suggestions where I am going wrong. Thanks in advance.

1 Answers

remove this

if __name__ == '__main__':
Related