Fix deadlock in autograd (#1140)

diff --git a/torch/csrc/autograd/engine.cpp b/torch/csrc/autograd/engine.cpp
index 9adc77f..4c02563 100644
--- a/torch/csrc/autograd/engine.cpp
+++ b/torch/csrc/autograd/engine.cpp
@@ -98,6 +98,7 @@
       }
     }
     if (--task.base->outstanding_tasks == 0) {
+      std::lock_guard<std::mutex> lock(task.base->mutex);
       task.base->not_done.notify_all();
     }
   }