[Lazarus] GUI development for web UI
Michael Van Canneyt
michael at freepascal.org
Wed Dec 1 19:31:38 CET 2010
On Wed, 1 Dec 2010, Marcos Douglas wrote:
> 2010/12/1 <michael.vancanneyt at wisa.be>:
>>
>>
>> On Wed, 1 Dec 2010, Marcos Douglas wrote:
>>
>>> On Wed, Dec 1, 2010 at 1:05 PM, <michael.vancanneyt at wisa.be> wrote:
>>>>
>>>> [snip]
>>>>
>>>> It never could. There is 1 connection, and all requests go through this
>>>> connection.
>>>>
>>>> A week (or maybe 2) ago, I sent you a private mail about using select()
>>>> on the connection handle. This or the use of threads could be used
>>>> to handle multiple connections. Maybe look it up and reply :-)
>>>
>>> ExtPascal uses threads to handle multiple connections. I remember you
>>> don't accept this way, right? BTW, what is there wrong if ExtPascal
>>> uses threads?
>>
>> I accept using threads, but not the way ExtPascal does it. Threads should be
>> optional. In extpascal, the thread is equal to the session: if you have many
>> sessions, the application will create as many threads as there are sessions.
>>
>> Under normal circumstances you would have a fixed (or limited) thread pool,
>> and each request is handled by a free thread in the pool. So requests of
>> a session can (and will) be handled by different threads.
>>
>> In ExtPascal, it is impossible to separate the thread from the session.
>> This has the advantage of being simple, but doesn't scale, and creates
>> unneeded dependencies between different parts of the software.
>
> I understood.
> So, the fpWeb works with threads (pool) if I need them?
Currently not, but the design is made so that it can be added if needed.
With ExtPascal, the design is so that it cannot be added, even if you
wanted it. (well, not without reworking ExtPascal completely)
Michael.
More information about the Lazarus
mailing list