Re: [twsocket] ICS for Linux Development

2005-09-03 Thread Ari Sundholm
Hello Eric, hello everyone!

 locks up (threading).  In speaking to Ari Sundholm about this, he mentioned
 that the design of the TICSSocket components is a bit awkward and that this
 sort of thing was bound to happen.  I fully concur with what he has said,
 and feel that a total rewrite of the component set under Linux is required.
 I don't think that many on this mailing list are using TICSSocket, or we
 probably would have seen this issue raise it's head in a bigger way.  I
 however have a product that is contracted to work under Windows and under
 Linux and I must move forward on this now.  I cannot delay any further
 waiting for this to be addressed.

IIRC the reason for the awkwardness was the assumption that async
sockets don't exist in Linux (which is simply untrue AFAIK - or am I on
crack?) and/or the lack of a messaging system such as in Windows.
Therefore an elaborate threaded message passing system was built - with
a huge number of subtle as well as obvious bugs (which haven't been
debugged and fixed due to my laziness during my scarce free time). I
think a completely new approach has to be taken, but I will have to do
some reading and thinking to be of any substantial help regarding
design. Unfortunately, I have quite serious time problems at the moment
due to moving to Japan at the end of September.

 Therefore, I would like to re-develop the core component (TWSocket) set
 under the Linux platform using Kylix 3.  The intention is to build a version
 of the core components that is fully compatibly (from an interface
 perspective anyway) with TWSocket and then to donate it back to this forum.
 Francois, I would want your blessing to do this, and after that has been
 given, will invite all of those who are interested and who can commit time
 on a weekly basis to this project to volunteer to join this project.  If a
 team is not assembled, then I will proceed with this project on my own as I
 am now getting into serious time constraints.

I will try to be available as much as possible in case you need help. I
think I'll be able to squeeze a few hours per week, depending on my
other responsibilities.

What are your time constraints? Are we speaking of weeks or months?

 Regards
 
 Erich Kuba

Best regards,

Ari Sundholm
[EMAIL PROTECTED]
[EMAIL PROTECTED]
Author of cddbcomp - THE Delphi component for freedb access
Moderator of freedb forums
freedb core team
Support languages: Finnish, English, German, Swedish
DISCLAIMER: Despite being part of the freedb team I only represent myself 
unless otherwise noted. Freedb is in no way responsible for my actions or 
opinions.

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] ICS for Linux Development

2005-09-03 Thread Francois PIETTE
 IIRC the reason for the awkwardness was the assumption that async
 sockets don't exist in Linux (which is simply untrue AFAIK - or am I on
 crack?) and/or the lack of a messaging system such as in Windows.

IMO Linux lack both true async socket, and messaging system.

Linux has non-blocking socket but no mechanism to tell the application when 
the socket is ready to send or has received something. You have to use the 
trick I used.

Linux has no windows like messaging system, that's why QT built his own. But 
QT implementation is far too slow for anything else than a user interface. 
And using QT is only possible when X-Window is loaded !

Contribute to the SSL Effort. Visit http://www.overbyte.be/eng/ssl.html
--
[EMAIL PROTECTED]
The author for the freeware multi-tier middleware MidWare
The author of the freeware Internet Component Suite (ICS)
http://www.overbyte.be



- Original Message - 
From: Ari Sundholm [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Saturday, September 03, 2005 3:22 PM
Subject: Re: [twsocket] ICS for Linux Development


 Hello Eric, hello everyone!

 locks up (threading).  In speaking to Ari Sundholm about this, he 
 mentioned
 that the design of the TICSSocket components is a bit awkward and that 
 this
 sort of thing was bound to happen.  I fully concur with what he has said,
 and feel that a total rewrite of the component set under Linux is 
 required.
 I don't think that many on this mailing list are using TICSSocket, or we
 probably would have seen this issue raise it's head in a bigger way.  I
 however have a product that is contracted to work under Windows and under
 Linux and I must move forward on this now.  I cannot delay any further
 waiting for this to be addressed.

 IIRC the reason for the awkwardness was the assumption that async
 sockets don't exist in Linux (which is simply untrue AFAIK - or am I on
 crack?) and/or the lack of a messaging system such as in Windows.
 Therefore an elaborate threaded message passing system was built - with
 a huge number of subtle as well as obvious bugs (which haven't been
 debugged and fixed due to my laziness during my scarce free time). I
 think a completely new approach has to be taken, but I will have to do
 some reading and thinking to be of any substantial help regarding
 design. Unfortunately, I have quite serious time problems at the moment
 due to moving to Japan at the end of September.

 Therefore, I would like to re-develop the core component (TWSocket) set
 under the Linux platform using Kylix 3.  The intention is to build a 
 version
 of the core components that is fully compatibly (from an interface
 perspective anyway) with TWSocket and then to donate it back to this 
 forum.
 Francois, I would want your blessing to do this, and after that has been
 given, will invite all of those who are interested and who can commit 
 time
 on a weekly basis to this project to volunteer to join this project.  If 
 a
 team is not assembled, then I will proceed with this project on my own as 
 I
 am now getting into serious time constraints.

 I will try to be available as much as possible in case you need help. I
 think I'll be able to squeeze a few hours per week, depending on my
 other responsibilities.

 What are your time constraints? Are we speaking of weeks or months?

 Regards

 Erich Kuba

 Best regards,

 Ari Sundholm
 [EMAIL PROTECTED]
 [EMAIL PROTECTED]
 Author of cddbcomp - THE Delphi component for freedb access
 Moderator of freedb forums
 freedb core team
 Support languages: Finnish, English, German, Swedish
 DISCLAIMER: Despite being part of the freedb team I only represent myself 
 unless otherwise noted. Freedb is in no way responsible for my actions or 
 opinions.

 -- 
 To unsubscribe or change your settings for TWSocket mailing list
 please goto http://www.elists.org/mailman/listinfo/twsocket
 Visit our website at http://www.overbyte.be 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be


Re: [twsocket] NO_ADV_MT symbol

2005-09-03 Thread Dan
- Original Message - 
From: Francois Piette [EMAIL PROTECTED]
To: ICS support mailing twsocket@elists.org
Sent: Friday, September 02, 2005 12:30 PM
Subject: Re: [twsocket] NO_ADV_MT symbol


  IMO it is better design to have all access to a given
  component from only one thread. And in that case, you can
  define NO_ADV_MT to have better performances because you
  avoid using a critical section.

 Thank you, this answers my questions.

 I use 2 servers and some clients in same exe, but seperate threads. 
 Atually
 all is controlled from main, but only by posting messages, so no threads 
 or
 components in them is touched from outside the thread. And no
 sockets/components is switched from one thread to another.

 I will then define the NO_ADV_MT and I will get improved performance?

 You should. Improvement will be significant if you have a slow processor 
 and a fast network. It will
 be neglectible if you have a fast processor and slow network.


negligible :) 

-- 
To unsubscribe or change your settings for TWSocket mailing list
please goto http://www.elists.org/mailman/listinfo/twsocket
Visit our website at http://www.overbyte.be