On Sunday 17 August 2008 11:20, [EMAIL PROTECTED] wrote:
> Author: nextgens
> Date: 2008-08-17 10:20:14 +0000 (Sun, 17 Aug 2008)
> New Revision: 21950
>
> Modified:
> trunk/freenet/src/freenet/support/io/TempBucketFactory.java
> Log:
> TempBucketFactory: simplify accounting
>
> Modified: trunk/freenet/src/freenet/support/io/TempBucketFactory.java
> ===================================================================
> --- trunk/freenet/src/freenet/support/io/TempBucketFactory.java
> 2008-08-17
10:15:25 UTC (rev 21949)
> +++ trunk/freenet/src/freenet/support/io/TempBucketFactory.java
> 2008-08-17
10:20:14 UTC (rev 21950)
> @@ -74,6 +74,7 @@
> private class RAMBucket extends ArrayBucket {
> public RAMBucket(long size) {
> super("RAMBucket", size);
> + _hasTaken(size);
> }
>
> @Override
> @@ -115,7 +116,11 @@
> return makeBucket(size, factor, defaultIncrement);
> }
>
> - protected synchronized void _hasFreed(long size) {
> + private synchronized void _hasTaken(long size) {
> + bytesInUse += size;
> + }
> +
> + private synchronized void _hasFreed(long size) {
> bytesInUse -= size;
> }
>
> @@ -161,17 +166,16 @@
> */
> public TempBucket makeBucket(long size, float factor, long increment)
throws IOException {
> Bucket realBucket = null;
> - boolean isARAMBucket = false;
> + boolean useRAMBucket = false;
>
> synchronized(this) {
> if((size > 0) && (size <= maxRAMBucketSize) &&
> (bytesInUse <=
maxRamUsed)) {
> - bytesInUse += size;
> - isARAMBucket = true;
> + useRAMBucket = true;
> }
> }
>
> // Do we want a RAMBucket or a FileBucket?
> - realBucket = (isARAMBucket ? new RAMBucket(size) : new
TempFileBucket(filenameGenerator.makeRandomFilename(), filenameGenerator));
> + realBucket = (useRAMBucket ? new RAMBucket(size) : new
TempFileBucket(filenameGenerator.makeRandomFilename(), filenameGenerator));
> // Do we want it to be encrypted?
> realBucket = (!reallyEncrypt ? realBucket : new
PaddedEphemerallyEncryptedBucket(realBucket, 1024, strongPRNG, weakPRNG));We don't need to encrypt if it's in RAM.
pgp4rHLUErRgw.pgp
Description: PGP signature
_______________________________________________ Devl mailing list [email protected] http://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
