当前位置: 首页>>代码示例>>Java>>正文


Java ArrayCounter类代码示例

本文整理汇总了Java中org.hsqldb.lib.ArrayCounter的典型用法代码示例。如果您正苦于以下问题:Java ArrayCounter类的具体用法?Java ArrayCounter怎么用?Java ArrayCounter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


ArrayCounter类属于org.hsqldb.lib包,在下文中一共展示了ArrayCounter类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getAccessCountCeiling

import org.hsqldb.lib.ArrayCounter; //导入依赖的package包/类
/**
 * Return the max accessCount value for count elements with the lowest
 * access count. Always return at least accessMin + 1
 */
protected int getAccessCountCeiling(int count, int margin) {
    return ArrayCounter.rank(accessTable, hashIndex.newNodePointer, count,
                             accessMin, accessCount, margin);
}
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:9,代码来源:BaseHashMap.java

示例2: getAccessCountCeiling

import org.hsqldb.lib.ArrayCounter; //导入依赖的package包/类
/**
 * Return the max accessCount value for count elements with the lowest
 * access count. Always return at least accessMin + 1
 */
public int getAccessCountCeiling(int count, int margin) {
    return ArrayCounter.rank(accessTable, hashIndex.newNodePointer, count,
                             accessMin + 1, accessCount, margin);
}
 
开发者ID:s-store,项目名称:sstore-soft,代码行数:9,代码来源:BaseHashMap.java

示例3: cleanUp

import org.hsqldb.lib.ArrayCounter; //导入依赖的package包/类
/**
     * Reduces the number of rows held in this Cache object. <p>
     *
     * Cleanup is done by checking the accessCount of the Rows and removing
     * the rows with the lowest access count.
     *
     * Index operations require that up to 5 recently accessed rows remain
     * in the cache.
     *
     */
    private void cleanUp() throws HsqlException {

        // put access count in the array
        for (int i = 0; i < iCacheSize; i++) {
            accessCount[i] = rFirst.iLastAccess;
            rFirst         = rFirst.rNext;
        }

//        rankTimer.start();
        // It is possible the target access count is shared
        // by many elements due to resetting of all access counts. So remove
        // the next access count to account for this condition.
        firstAccessCount =
            ArrayCounter.rank(
                accessCount, iCacheSize / 4, firstAccessCount,
                currentAccessCount, iCacheSize / 512) + 1;

//        rankTimer.stop();
        // put all low rows in the array
        int removecount = 0;

        for (int i = 0; i < iCacheSize; i++) {
            if (rFirst.iLastAccess < firstAccessCount) {
                rowTable[removecount++] = rFirst;
            }

            rFirst = rFirst.rNext;
        }

        rowComparator.setType(rowComparator.COMPARE_POSITION);

//        sortTimer.start();
        Sort.sort(rowTable, rowComparator, 0, removecount - 1);

//        sortTimer.stop();
//        saveAllTimer.start();
        int removedRows = 0;

        for (int i = 0; i < removecount; i++) {
            CachedRow r = rowTable[i];

            try {
                if (r.hasChanged()) {
                    saveRow(r);

                    saveRowCount++;
                }

                if (!r.isRoot()) {
                    remove(r);

                    removedRows++;
                }
            } catch (Exception e) {
                throw Trace.error(Trace.FILE_IO_ERROR, Trace.Cache_cleanUp,
                                  new Object[]{ e });
            }

            // all rows must be cleard from array - even those that remain in cache
            rowTable[i] = null;
        }

//        saveAllTimer.stop();
        // Trace.printSystemOut("cache.cleanup() min access: ", tempfirstaccess);
        // Trace.printSystemOut("cache.cleanup() current access: ", currentAccessCount);
        // Trace.printSystemOut("cache.cleanup() total saveRowCount: ", saveRowCount);
        // Trace.printSystemOut("cache.cleanup() removed row count for this call: ", removedRows);
        initBuffers();
    }
 
开发者ID:parabuild-ci,项目名称:parabuild-ci,代码行数:80,代码来源:Cache.java

示例4: getAccessCountCeiling

import org.hsqldb.lib.ArrayCounter; //导入依赖的package包/类
/**
 * Return the max accessCount value for count elements with the lowest
 * access count
 */
protected int getAccessCountCeiling(int count, int margin) {
    return ArrayCounter.rank(accessTable, count, accessMin, accessCount,
                             margin);
}
 
开发者ID:parabuild-ci,项目名称:parabuild-ci,代码行数:9,代码来源:BaseHashMap.java

示例5: getAccessCountCeiling

import org.hsqldb.lib.ArrayCounter; //导入依赖的package包/类
/**
 * Return the max accessCount value for count elements with the lowest
 * access count. Always return at least accessMin + 1
 */
protected int getAccessCountCeiling(int count, int margin) {
    return ArrayCounter.rank(accessTable, hashIndex.newNodePointer, count,
                             accessMin + 1, accessCount, margin);
}
 
开发者ID:parabuild-ci,项目名称:parabuild-ci,代码行数:9,代码来源:BaseHashMap.java


注:本文中的org.hsqldb.lib.ArrayCounter类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。