On 31Dec2020 18:07, jak <nos...@please.ty> wrote: >Il 31/12/2020 11:43, Petro ha scritto: >>I would like to make something like this: >>A python script would run headlessly in the background. >>I would like to control the script from the command line using other python >>scripts or from the python shell. >> From time to time I would ask the main script to create a popup window with >> an image or a plot. >>What would be the proper way to approach it. How to make communication >>between two scripts? > >using named pipes would be an alternative. A small example that >produces an echo for windows.
A Windows named pipe seems to be more like a UNIX-side "UNIX domain socket" than a UNIX side "named pipe". >For linux it's simpler using os.mkfifo: Not really. For Linux (and of course other UNIXen) you really want a UNIX domain socket, not a a name pipe (as from mkfifo). The reason is that a socket (and a Windows pipe, from my limited understanding) creates a new distinct connection when you open it. (The other end has to accept that connection, at least in UNIX). The problem with a UNIX pipe is that every client (your command line control script) _share_ the same pipe - if two scripts un at once there will be a failure. If you contrive some locking scheme then you can share a named pipe in UNIX because only once client will use the pipe at a time. Just something to keep in mind. Cheers, Cameron Simpson <c...@cskk.id.au> -- https://mail.python.org/mailman/listinfo/python-list