Jump to content

Featured Replies

Posted

With the following functions, you can run a background process (e.g., a loop function that constantly reloads data, for example from a text file) and do other things in parallel, such as modifying functions, etc. This is helpful when working with LISP/Opusmodus to process data in real time. I’ve tested this for a few days now, and it seems to run well and stable — at least as stable as the background process functions are free of bugs.

Starting the process: Give the process a name and "add" your function (Here’s an example I made) -> process name “mididateien-generieren”, and my function within it is called “gen_1.midi”

(mp:process-run-function "mididateien-generieren" nil #'gen_1.midi)

Stopping the background process

(progn
  (print "mididateien-generieren gestoppt")
  (mp:map-processes
   (lambda (proc)
     (when (string= (mp:process-name proc) "mididateien-generieren")
       (mp:process-kill proc)))))

If anyone has better solutions for this, I’d be happy to hear them!

Greetings

André

  • AM changed the title to Background process for real-time operations

Create an account or sign in to comment


Copyright © 2014-2025 Opusmodus™ Ltd. All rights reserved.
Product features, specifications, system requirements and availability are subject to change without notice.
Opusmodus, the Opusmodus logo, and other Opusmodus trademarks are either registered trademarks or trademarks of Opusmodus Ltd.
All other trademarks contained herein are the property of their respective owners.

Powered by Invision Community

Important Information

Terms of Use Privacy Policy