Java±à³Ì ÓÐ1ÒÚ¸ö¸¡µãÊý£¬ÇëÕÒ³öÆäÖжԴóµÄ10000¸ö
ÓÐ1ÒÚ¸ö¸¡µãÊý£¬ÇëÕÒ³öÆäÖжԴóµÄ10000¸ö¡£Ìáʾ£º¼ÙÉèÿ¸ö¸¡µãÊýÕ¼4¸ö×Ö½Ú£¬1ÒÚ¸ö¸¡µãÊý¾ÍÒªÕ¾µ½Ï൱´óµÄ¿Õ¼ä£¬Òò´Ë²»ÄÜÒ»´Î½«È«²¿¶ÁÈëÄÚ´æ½øÐÐÅÅÐò¡£
/**
*
*/
package com.code;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Arrays;
import java.util.Collections;
import junit.framework.Assert;
import org.junit.Test;
/**
* @author Chi
*
*/
public class FloatSelector {
// @Test
public void testGenerateData(){
this.generate(100000000);
}
@Test
public void select(){
long start = System.currentTimeMillis();
final int SIZE = 10000;
Float[] selected = new Float[SIZE];
BufferedInputStream in = new BufferedInputStream(this.getClass().getResourceAsStream("data"));
//Set buffer to load array for one time.
final int BUFFER_SIZE = SIZE * 4;
final byte[] buffer = new byte[BUFFER_SIZE];
//1, Fill selected array
int pointer = 0;
int read = 0;
try {
read = in.read(buffer);
for(int i = 0; i < read / 4; i++ ){
selected[pointer ++] = Float.intBitsToFloat(bytes2int(buffer, i*4));
}
//2, sort the array
Arrays.sort(selected, Collections.reverseOrder());
while((read = in.read(buffer)) > 0){
for(int i = 0; i < read / 4; i++ ){
float newValue = Float.intBitsToFloat(bytes2int(buffer, i*4));
int j;
for(j = selected.length - 1; j >= 0 && newValue > selected[j]; j--);
if(j < selected.length - 1){
//move
for(int k = selected.length - 1; k > j + 1; k --){
selected[k] = selected[k - 1];
}
Ïà¹ØÎĵµ£º
×é¼þ
¹¦ÄÜ
Com.guipei.listener. SessionListener
¼àÌý×é¼þ£¬Íê³ÉHttpSessionContextµÄ¹¦ÄÜ
index.jsp
ʵÏÖÓû§µÇ½£¬´´½¨ÐµÄsession
logout.jsp
ʵÏÖÓû§Í˳ö£¬Óû§×Ô¶¯É¾³ýsession
display.jsp
ÏÔʾÓû§µÇ½ÐÅÏ¢£¬ÔÚÓû§µÇ½ºó×Ô¶¯×ªÈë
session.jsp
Áгöµ±Ç°ËùÓеÄsession
kill.jsp
ɱµôÖ¸¶¨µÄ»á»° ......
µ¥ÀýģʽµÄʵÏÖ·½Ê½ÓкܶàÖÖ£¬ÔÚÕâÀï½éÉÜ×î¼òµ¥µÄÁ½ÖÖ¡£
µ¥ÀýģʽÄܹ»È·±£Ò»¸öÀàÖ»ÓÐÒ»¸öʵÀý£¨Õý³£Çé¿öÎÒÃÇ¿ÉÒÔnew³öÒ»¸öÀàµÄÎÞÊý¸öʵÀý£©£¬×ÔÐÐÌṩÕâ¸öʵÀý²¢ÏòÕû¸öϵͳÌṩÕâ¸öʵÀý¡£ÏÂÃæ½éÉܵ¥ÀýģʽµÄʵÏÖ·½·¨£º
1. µ¥ÀýģʽÓÐÁ½ÖÖʵÏÖ·½Ê½£ºÒ»ÖÖÊǽ«Àൠ......
1¡¢ ÈÏʶThreadºÍRunnable
JavaÖÐʵÏÖ¶àÏß³ÌÓÐÁ½ÖÖ;¾¶£º¼Ì³ÐThreadÀà»òÕßʵÏÖRunnable½Ó¿Ú¡£RunnableÊǽӿڣ¬½¨ÒéÓýӿڵķ½Ê½Éú³ÉỊ̈߳¬ÒòΪ½Ó¿Ú¿ÉÒÔʵÏÖ¶à¼Ì³Ð£¬¿öÇÒRunnableÖ»ÓÐÒ»¸örun·½·¨£¬ºÜÊʺϼ̳С£ÔÚʹÓÃThreadµÄʱºòÖ»Ðè¼Ì³ÐThread£¬²¢ÇÒnewÒ»¸öʵÀý³öÀ´£¬µ÷ÓÃstart()·½·¨¼´¿ÉÒÔÆô¶¯Ò»¸öÏ̡߳£
Thread Test = ......
ÊØ»¤Ị̈߳¨Daemon£©
JavaÓÐÁ½ÖÖThread£º“ÊØ»¤Ïß³ÌDaemon”Óë“Óû§Ïß³ÌUser”¡£
ÎÒÃÇ֮ǰ¿´µ½µÄÀý×Ó¶¼ÊÇÓû§£¬ÊØ»¤Ïß³ÌÊÇÒ»ÖÖ“ÔÚºǫ́ÌṩͨÓÃÐÔÖ§³Ö”µÄỊ̈߳¬Ëü²¢²»ÊôÓÚ³ÌÐò±¾Ìå¡£
´Ó×ÖÃæÉÏÎÒÃǺÜÈÝÒ×½«ÊØ»¤Ïß³ÌÀí½â³ÉÊÇÓÉÐéÄâ»ú£¨virtual machine£©ÔÚÄÚ²¿´´½¨µÄ£¬¶øÓû§Ïß³ÌÔòÊÇ×Ô ......