[Lazarus] Multi-threading support in IDE

Marco van de Voort marcov at stack.nl
Fri Aug 14 14:51:58 CEST 2009


On Fri, Aug 14, 2009 at 09:19:11AM +0200, Mattias Gaertner wrote:
> > And having compiler and linker in separate (asynchronous) threads
> > would be the same as starting them as a new process in asynchronous
> > mode. It would open a can of worms because of synchronising problems.
> 
> They only share files. The synchronising is easy. 
> 
> The are good reasons to not put the compiler into the same process:
> -a process can be aborted/killed easily
> -various compiler versions
> -compiler crashes do not effect the IDE

Disadvantages:
- compiler versions might not match (entirely)
- Multiple processes that can only be made sequential over I/O. Potential
  for race conditions. 
- (some) platforms might not support multiple processes at all, or miss
   the relevant 100% primitives. (also e.g. faulty pipe implementations)





More information about the Lazarus mailing list