Threads can share data using variables with file scope
(processes need to use an
IPC mechanism
like a file, pipe/FIFO,
shared memory segment, message queue, etc..)
Speed:
Threads can be created more quickly than processes
Context switches may be faster for threads than processes
Advantages of Processes
Safety:
Functions called by multiple threads must be "thread safe"
A defect in one thread can damage all of the threads in
a process (since they share the same address space and other
attributes)
Resources:
Threads share the resources (e.g., address space)
of a single process