I have a Twisted application daemon which is started by twistd. This daemon acts as a daemon manager to manage many other Twisted application daemons. I can send the manager a "new" command via TCP and the manager should spawn(fork) another Twisted application daemon. My question is how can I do that? After fork, I think I should stop the manager's reactor loop, close opened file descriptors(logging file), then run the new Twisted application daemon. I want to know the details of how to do these things properly.
Twisted: spawn an application daemon from another application daemon
369 Views Asked by jjyao At
1
There are 1 best solutions below
Related Questions in TWISTED
- Ordering tests using trial twisted
- how install jsonrpc on macos for python27
- Installing Twisted through pip broken on one server
- Efficiently search a string serialized python dict stored in Redis
- Twistd executable on Python3
- Run a twisted trial test within a program
- Calling Python code from Twisted
- How do I run twisted from the console?
- Set a timeout for an UDP socket with Twisted (python)
- Scrapy `ReactorNotRestartable`: one class to run two (or more) spiders
- Control/defer sending out 201 status
- Running Scrapy on PyPy
- Twisted Proxy using TCP reactor works at which level of OSI layer?
- txAerospike - Aerospike and Twisted
- Exiting Python Program after closing connection in Twisted
Related Questions in TWISTED.APPLICATION
- twisted module of python3 portion missing on osx
- Unit Test for twisted addCallback with nested method
- Twisted multiple ports
- How deploy Twistd https application (.tac) with systemd as unprivileged user?
- Running a Twisted Application in PyDev
- How to gracefully exit application started with twistd?
- Wait for a twisted service to start before starting another
- i'm getting 'nonetype' not iterable error in python /twisted
- Twisted: spawn an application daemon from another application daemon
- Run Non-Twisted-based Python script daemonized with twistd
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
You should use the reactor's
spawnProcessmethod. See http://twistedmatrix.com/documents/current/core/howto/process.html for details on its use.You should not fork or do any of those other steps yourself. They are difficult to do correctly, and
spawnProcessalready does them for you.If you're curious about how these things are done, you can browse the various implementations.