anchor.diff:        (funcall hook)))
     (in-new-thread-waiting "startup-worker"
       (enable-systems *engine*))
  +  (when blocking
  +    (mt:wait-for-latch (%stop-latch-of *engine*)))
     (values))
   
   
  
positive.code:     (dispose ex)))
  
  
  (defun startup (properties &optional (working-directory (directory-namestring
                                                           (current-executable-path))))
    "Start engine synchronously loading configuration from `properties` (file, hash-table, plist
  or alist). `(:engine :systems)` property must exist in the config and should contain list
  of existing system class names loaded into current lisp image. Specified systems and their
  
negative.code:     (error "Engine already stopped"))
    (in-new-thread-waiting "shutdown-worker"
      (disable-systems *engine*))
    (let ((latch (%stop-latch-of *engine*)))
      (dispose *engine*)
      (setf *engine* nil)
      (mt:open-latch latch))
    (values))
  
  
  