2014-03-19 17:24 GMT+01:00 Rémy Maucherat <r...@apache.org>:
> 2014-03-19 17:10 GMT+01:00 Yann Simon <yann.simon...@gmail.com>:
>
>> 2014-03-19 17:05 GMT+01:00 Rémy Maucherat <r...@apache.org>:
>> > 2014-03-19 16:36 GMT+01:00 Yann Simon <yann.simon...@gmail.com>:
>> >
>> >> I have maybe found another problem:
>> >> onAllDataRead is called with the same thread that is calling input.read.
>> >>
>> >
>> > I am not aware of any requirement that says this is not allowed.
>> >
>> > Rémy
>>
>> You're right, the specs is not precise for this.
>> But doing so makes the ReadListener very difficult to use:
>> the onAllDataRead is called even before we had a chance to make
>> something with the data we just read.
>>
>
> This is because you're forking a thread, it won't concurrently invoke the
> two events (which would be invalid).

Can you explain more please? I have difficulties to understand your sentence.

>> I'd wish the specs to be much more precise for this sort of behavior,
>> because it is now quite impossible to write a ReadListener that can
>> run both on Jetty and Tomcat for example.
>>
>
> Other async APIs like NIO2 are not any more "precise" on purpose about the
> threading model, because this allows being flexible and have better
> performance. You could use a semaphore to implement your desired behavior.

Thx for the hint, I'll try that. But I doubt to find a solution that
works on all containers.

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to