I don't think increasing the amount transferred actually increases the
memory used -- the data's transferred directly from disk to socket,
with what should be no temporary buffer in-between.  The '100' value
left there (as opposed to MAX_VALUE) was a holdover from while I was
testing to make sure chunked encoding worked (and I forgot to fully
revert the changes).

Sam

On Fri, Feb 22, 2008 at 9:39 AM, sebb <[EMAIL PROTECTED]> wrote:
> On 22/02/2008, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> > Author: olegk
> >  Date: Fri Feb 22 05:57:51 2008
> >  New Revision: 630209
> >
> >  URL: http://svn.apache.org/viewvc?rev=630209&view=rev
> >  Log:
> >  HTTPCORE-148: Transfer as many bytes as possible at a time. This fix 
> > improves performance significantly (up to 5x)
> >
>
> What if the user wants to limit the memory that is used?
>
> Is there a way to override this? If not, perhaps there should be?
>
> >  Modified:
> >     
> > httpcomponents/httpcore/branches/limewire_contrib/module-nio/src/main/java/org/apache/http/nio/entity/NFileEntity.java
> >
> >  Modified: 
> > httpcomponents/httpcore/branches/limewire_contrib/module-nio/src/main/java/org/apache/http/nio/entity/NFileEntity.java
> >  URL: 
> > http://svn.apache.org/viewvc/httpcomponents/httpcore/branches/limewire_contrib/module-nio/src/main/java/org/apache/http/nio/entity/NFileEntity.java?rev=630209&r1=630208&r2=630209&view=diff
> >  
> > ==============================================================================
> >  --- 
> > httpcomponents/httpcore/branches/limewire_contrib/module-nio/src/main/java/org/apache/http/nio/entity/NFileEntity.java
> >  (original)
> >  +++ 
> > httpcomponents/httpcore/branches/limewire_contrib/module-nio/src/main/java/org/apache/http/nio/entity/NFileEntity.java
> >  Fri Feb 22 05:57:51 2008
> >  @@ -95,9 +95,11 @@
> >
> >          long transferred;
> >          if(useFileChannels && encoder instanceof FileContentEncoder) {
> >  -            transferred = 
> > ((FileContentEncoder)encoder).transfer(fileChannel, idx, 100);
> >  +            transferred = ((FileContentEncoder)encoder)
> >  +                .transfer(fileChannel, idx, Long.MAX_VALUE);
> >          } else {
> >  -            transferred = fileChannel.transferTo(idx, Long.MAX_VALUE, new 
> > ContentEncoderChannel(encoder));
> >  +            transferred = fileChannel.
> >  +                transferTo(idx, Long.MAX_VALUE, new 
> > ContentEncoderChannel(encoder));
> >          }
> >
> >          if(transferred > 0)
> >
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to