Tôi hiện đang thử nghiệm chuyển nhiều quy trình phát triển của mình sang chế độ org để tôi có thể theo dõi tốt hơn những gì tôi đã thực hiện thử nghiệm. Tuy nhiên, một số bước liên quan đến các cuộc gọi không đồng bộ đến các dịch vụ RPC. Đoạn mã sau cho thấy vấn đề:
#+name: simple-async-example
#+begin_src emacs-lisp
(async-start
;; What to do in the child process
(lambda ()
(message "This is a test")
(sleep-for 3)
222)
;; What to do when it finishes
(lambda (result)
(format "Async process done - result should be 222: %s" result)))
#+end_src
#+RESULTS: simple-async-example
: #<process emacs>
Như bạn có thể thấy kết quả đến từ nhiệm vụ đầu tiên. Những gì tôi cần làm là nối thêm kết quả thực tế sau khi quá trình xử lý đã hoàn tất. Có bất kì cách nào để đạt được điều này không?
1
Ngoài tiêu đề, nó không thực sự rõ ràng câu hỏi của bạn là gì. Trả lời tiêu đề, tôi nghĩ rằng câu hỏi này xuất hiện thường xuyên trong danh sách email của Org và câu trả lời là "hiện không được hỗ trợ".
—
mankoff
@mankoff: OK Tôi đã diễn đạt lại và đơn giản hóa câu hỏi để thử làm cho dễ theo dõi hơn. Điều đó có tốt hơn không?
—
stsquad
vi.wikipedia.org/wiki/Minimal_Working_Example tại sao không có tập lệnh bash 3 dòng trả về một cái gì đó bất thường mà bất cứ ai cũng có thể chạy / kiểm tra / hiểu?
—
mankoff
@mankoff: bash vốn dĩ là đồng bộ phải không? Tôi đã gói tất cả các công cụ xây dựng và tải lên thành một tập lệnh để đơn giản hóa nó nhưng việc gửi công việc LAVA là một cái gì đó xảy ra không đồng bộ trong các emacs.
—
stsquad
@mankoff: Làm thế nào là ví dụ duy nhất mới?
—
stsquad