文章列表
ThreadLocal即线程本地变量,通过ThreadLocal.set()设置到线程中的对象是线程自己的对象,其他线程是不需要访问、也访问不到的。各个线程中访问的是不同的对象。
线程类Thread持有一个ThreadLocal.ThreadLocalMap的引用,通过这个map线程可以拥有多对本地变量;且各个线程拥有的是不同的map不需要同步,所以速度很快。
/* ThreadLocal values pertaining to this thread. This map is maintained
* by the ThreadLocal ...
成员函数与const
对于不改变类内部成员的成员函数,我们都要在函数后面加上const,对于会改变数据成员的函数则不加const。对成员函数加上const有明确的限制行为:调用该成员函数不会改变内部数据成员。但是,如果const函数的返回值是引用或指针呢?这种情况到底要不要对返回值加上const呢?先来看一段示例:
代码示例与结果
#include <iostream>
using namespace std;
struct Node {
Node* next;
int value;
Node() : next(0), val ...
前段时间在看侯捷的STL源码剖析,看到堆这一章顺带复习了一下堆排序,我们所说的堆一般指的是二叉堆,下面先来看下二叉堆的定义。
二叉堆定义
二叉堆是完全二叉树或是近似完全二叉树。
二叉堆满足两个特性:1.父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。2.每个结点的左子树和右子树都是一个二叉堆(都是最大堆或最小堆)。
最大堆:父结点的键值总是大于或等于任何一个子
先看一段代码:
#include <cstddef>
#include <cstdio>
#include <iostream>
using namespace std;
class TestSS;
class TestStaticMember {
public:
static TestSS* ssptr;
};
TestSS* TestStaticMember::ssptr = NULL;
class TestSS{
private:
int version;
public:
Tes ...
今天在iteye上看到一篇关于学习的博文,觉得很好,特地转载过来。
博文地址:http://coffeescript.iteye.com/blog/1771267。
以下是原文:
近几天有些网友在邮件里面问我关于学习的问题。有好几个人觉得工作了几年,也学会了不少的类 ...
本文转载自:http://zhan.renren.com/xinmengshe?gid=3602888498023910338&from=reblogSynFeed&ref=hotnewsfeed&sfet=3801&fin=0&ff_id=242309036
心理导读:如果你有好的习惯或足够重视,那么在面试前你都会搜集资料,为各种可能出现的面试问题 ...
本文转载自:http://www.cnblogs.com/jinzhao/archive/2012/04/12/2444440.html
虽然是很久了的数据,还是有很好的参考价值的:
lucene.commit.batch.size=0
lucene.commit.time.interval=0
These properties allow commits in batch, you can either set how many document changes a batch will contain (commit will happen after X docs are modi ...