If I hit control C multiple times it will finally stop the program. It just takes a while.
Since I now have access to the terminal output I can see there are multiple exception messages.
Perhaps ten or more I think coming from LIB functions and not my code.
Here is a typical example:
multiprocessing.pool.RemoteTraceback:
"""
Traceback (most recent call last):
File "/usr/local/lib/python3.5/dist-packages/joblib/_parallel_backends.py", line 350, in __call__
return self.func(*args, **kwargs)
File "/usr/local/lib/python3.5/dist-packages/joblib/parallel.py", line 131, in __call__
return [func(*args, **kwargs) for func, args, kwargs in self.items]
File "/usr/local/lib/python3.5/dist-packages/joblib/parallel.py", line 131, in <listcomp>
return [func(*args, **kwargs) for func, args, kwargs in self.items]
File "pyethrecover3.py", line 79, in attempt
raise PasswordFoundException("Password Found")
PasswordFoundException: Password Found
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.5/multiprocessing/pool.py", line 119, in worker
result = (True, func(*args, **kwds))
File "/usr/local/lib/python3.5/dist-packages/joblib/_parallel_backends.py", line 359, in __call__
raise TransportableException(text, e_type)
joblib.my_exceptions.TransportableException: TransportableException
___________________________________________________________________________
PasswordFoundException Thu Jun 8 07:14:19 2017
PID: 2409 Python 3.5.2: /usr/bin/python3
I suspect that one of the problems may be that the exception is raised from inside a for loop and the loop has to be stopped first. I know that in a Windows program using C# trying to exit a program from inside a loop will cause similar problems.
Here is the loop:
Parallel(n_jobs=-1)(delayed(attempt)(w, pw) for pw in pwds)
It seems to be a combo statement and could it be broken down into separate statements so I will understand it better. I know so little about python syntax.