| import multiprocessing, sys | |
| def foo(): | |
| print("123") | |
| # Because "if __name__ == '__main__'" is missing this will not work | |
| # correctly on Windows. However, we should get a RuntimeError rather | |
| # than the Windows equivalent of a fork bomb. | |
| if len(sys.argv) > 1: | |
| multiprocessing.set_start_method(sys.argv[1]) | |
| else: | |
| multiprocessing.set_start_method('spawn') | |
| p = multiprocessing.Process(target=foo) | |
| p.start() | |
| p.join() | |
| sys.exit(p.exitcode) |