3 async.el is an exceedingly simple module for doing asynchronous processing in
4 Emacs, by spawning a child Emacs interpreter to execute a lambda function, and
5 calling back when the job is done.
7 It uses a very simple syntax:
10 ;; What to do in the child process
12 (message "This is a test")
16 ;; What to do when it finishes
18 (message "Async process done, result should be 222: %s" result)))
20 If you omit the callback function, `async-start` returns a process object that
21 you can call `async-get` on when you're ready to wait for the result value:
23 (let ((proc (async-start
24 ;; What to do in the child process
26 (message "This is a test")
30 (message "I'm going to do some work here") ;; ....
32 (message "Waiting on async process, result should be 222: %s"
35 If you don't want to use a callback, and you don't care about any return value
36 form the child process, pass the `ignore` symbol as the second argument (if
37 you don't, and never call `async-get', it will leave *emacs* process buffers
42 (delete-file "a remote file on a slow link" nil))