Author Topic: Lazarus Networking Components  (Read 8129 times)


  • Hero Member
  • *****
  • Posts: 1013
    • HowTos Considered Harmful?
Lazarus Networking Components
« on: February 10, 2010, 04:27:53 pm »

I have come recently to Lazarus and have noticed Synapse. Lnet and Indy as the main networking components.

Is there some overview of how they compare and which ones are more appropriate?

Coming from Delphi, Indy would be the easiest, but I'd like to know about the others as well.

Lazarus 3.0/FPC 3.2.2


  • Sr. Member
  • ****
  • Posts: 412
Re: Lazarus Networking Components
« Reply #1 on: May 06, 2010, 05:16:12 pm »
Well, since I'm the author of lNet I'm a bit biased I guess but here goes:

Synapse is a "non-visual" (it doesn't integrate with GUI directly) networking lib which uses blocking sockets and (AFAIK) threads

Indy is a big project with years of development which started on Windows/Delphi and has visual components. Internally it supports both blocking and non-blocking although AFAIK it uses threads as well.

lNet is relatively lightweight, has GUI integration and uses non-blocking sockets (requires a bit of event-driven development thinking). Threading can be done with it (there's an experimental threaded eventer to pool requests and try and get the best of multiple cores etc.)


TinyPortal © 2005-2018