最近需要测试一个长连接服务器,数据上需要达到100W的长连接,测试的客户端,一个线程保持一个连接,发现linux服务器默认创建到3200多个线程的时候,就会报错这个错误“java.lang.OutOfMemoryError: unable to create new native thread。而且,此时整个系统都不能创新新的线程了,不能连接终端,不能执行任何命令。
貌似是内存不足,但实际内存尚...
分类:
编程语言 时间:
2014-06-03 03:30:58
阅读次数:
285
1、错误描述
Exception in thread "main" java.lang.IllegalArgumentException: Cannot format given Object as a Date
at java.text.DateFormat.format(Unknown Source)
at java.text.Format.format(Unknown Source)...
分类:
编程语言 时间:
2014-06-03 03:26:58
阅读次数:
309
早上做数据迁移,部署完slave2,发现3台机子的日志狂刷:旧slave:2014-05-29 14:35:35 996 [Note] Slave: received end packet from server, apparent master shutdown:
2014-05-29 14:35:35 996 [Note] Slave I/O thread: Failed reading l...
分类:
其他好文 时间:
2014-06-03 01:52:25
阅读次数:
327
1 ENVIRONMENTS
Table 1 ENV A
CPU
Intel(R) Xeon(R) CPU E7- 4870 @
2.40GHz 10-core
Memory
100G
Linux Version
3.11.0
Ubuntu Version
...
分类:
其他好文 时间:
2014-06-02 23:27:40
阅读次数:
397
Java线程(Java
Thread)是执行某些任务的一种轻量级进程。Java中的Thread类提供了多线程(multi-threading)功能,应用程序能够创建多个线程并同一时候执行。
在一个应用程序中,一般会有两种类型的线程-用户线程(user thread)和守护线程(daemon t...
分类:
编程语言 时间:
2014-06-02 17:27:34
阅读次数:
335
JavaLearningPath(一)、工具篇一、JDK(JavaDevelopmentKit)JDK是整个Java的核心,包括了Java运行环境(JavaRuntimeEnvirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某个版本的J...
分类:
编程语言 时间:
2014-06-02 13:42:22
阅读次数:
325
// SelectCli.cpp : 定义控制台应用程序的入口点。//#include
"stdafx.h"#include #include #pragma comment(lib,"ws2_32")#define
SOCKET_MAXCNT 64#define THREAD_NUM 2 //.....
/**
* @author gao
*/
package gao.org;
public class RunnableDemo implements Runnable{
@Override
public void run() {
// TODO Auto-generated method stub
for(int i=0;i<10;i++){
System.out.pri...
分类:
编程语言 时间:
2014-06-01 18:12:33
阅读次数:
441
我们通过nio学习了Reactor模式,但是在java7中又出现了NIO.2,新的异步框架出来了,在上节中的服务端视线中看不到Reactor的影子了,但是Netty in action中写到:But notice that NIO.2 handles threading and the creation of the so-called event loop for you.所以模式还是没变,只是封装了而已!那让我们来分解下AIO(NIO.2)的封装吧!...
分类:
其他好文 时间:
2014-06-01 01:40:11
阅读次数:
388
记录3个变量。
sum[i]:当前区间被覆盖2次及两次以上的面积。
num[i]:当前区间被覆盖1次及一次以上的面积。
cover[i]:覆盖的lazy标记。
对于每一个区间.
更新操作如下:
void push_up(int_now)
{
if(cover[rt]==0)
{
num[rt]=num[rt<<1]+num[rt<<1|1];
...
分类:
其他好文 时间:
2014-05-31 17:58:57
阅读次数:
296