Function: multisession--backend-set-value

multisession--backend-set-value is a byte-compiled function defined in multisession.el.gz.

Signature

(multisession--backend-set-value ARG &rest ARGS)

Implementations

(multisession--backend-set-value (TYPE (eql 'files)) OBJECT VALUE) in `multisession.el'.

Undocumented

(multisession--backend-set-value (TYPE (eql 'sqlite)) OBJECT VALUE) in `multisession.el'.

Undocumented

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/multisession.el.gz
(cl-defmethod multisession--backend-set-value ((_type (eql 'sqlite))
                                               object value)
  (if (not (sqlite-available-p))
      (cl-call-next-method)
    (catch 'done
      (let ((i 0))
        (while (< i 10)
          (condition-case nil
              (throw 'done (multisession--set-value-sqlite object value))
            (sqlite-locked-error
             (setq i (1+ i))
             (sleep-for (+ 0.1 (/ (float (random 10)) 10))))))
        (signal 'sqlite-locked-error "Database is locked")))))