Others have suggested the %run which would work but in my current project I opted for the ThreadPoolExecutor. It creates isolated threads on your spark pool on the same session.
with ThreadPoolExecutor(max_workers=int(max_parallel_counter)) as executor:
mssparkutils.notebook.run(notebook_path)