Multithreaded programming and Multiprocess programming are very similar.
Multithreaded programming places the responsibility of scheduling the thread with the program and not with the task scheduler in the kernel. Thus, your program needs to swap things around to simulate that both items are running at the same time.
Multithreaded programming uses a single set of instructions in memory, so you need to lock access to parts that update variable values to prevent a collision. Multiprocess programming gives each process its own memory space thus you don't need to worry about locking variables before updates.
Multithreaded programming can communicate with other threads using all sorts of global variables. Multiprocess programming needs to use IPC or pipes, etc. to communicate with other processes.
In general, I've almost always been able to write programs with nothing but fork. Since it sounds like you're working on a program to launch other programs, fork sounds like it would work. Just keep the parent process in an infinite loop and run it in the background.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link or
or How to display code and escape characters
are good places to start.
|