anchor.diff:    (when (or (not (uiop:file-exists-p (expand-path (path hostlist))))
               (< (update-interval hostlist)
                  (- (get-universal-time) (uiop:safe-file-write-date (expand-path (path hostlist))))))
  -    (bt:make-thread
  -     (lambda ()
  -       (when (bt:acquire-lock update-lock nil)
  -         (update hostlist)
  -         (bt:release-lock update-lock)))))
  +    (update-hostlist-with-lock hostlist))
     (handler-case
         (uiop:read-file-string (expand-path (path hostlist)))
       (error ()
  
positive.code:   (delete 'nyxt/blocker-mode::hostlists
            (mapcar #'closer-mop:slot-definition-name
                    (closer-mop:class-slots (class-of object)))))
  
negative.code: 
  (defvar update-lock (bt:make-lock))
  
  (defmethod update-hostlist-with-lock ((hostlist hostlist))
    (bt:make-thread
     (lambda ()
       (when (bt:acquire-lock update-lock nil)
         (update hostlist)
         (bt:release-lock update-lock)))))
  
  (defmethod read-hostlist ((hostlist hostlist))
    "Return hostlist file as a string.
  Return nil if hostlist file is not ready yet.
  