Popular Posts
Enable SSL connection for Jsoup import org.jsoup.Connection; import org.jsoup.Jsoup; import javax.net.ssl.*; import java.io.IOException; import java.security.KeyManagement... Dump MySQL & restore $ mysqldump -u root -x --all-databases > dump.sql $ mysqldump -u root データベース名 > dump.sql $ mysql -u root -p $ mysql -u root データベ... Create barcode import java.io.File; import java.io.FileNotFoundException; import net.sourceforge.barbecue.Barcode; import net.sourceforge.barbecue.Barcode...
Stats
Shared memory (file base) in Java
import java.io.File;
import java.io.RandomAccessFile;
import java.nio.MappedByteBuffer;
import java.nio.channels.FileChannel;
import java.nio.channels.FileChannel.MapMode;
import java.text.SimpleDateFormat;
import java.util.Date;

public class SmWrite {

    public static void main(String[] args) throws Exception {
        File file = new File("c:/mem.txt");
        int length = (int) file.length();
        String mode = "rw";
        FileChannel fc = new RandomAccessFile(file, mode).getChannel();
        MappedByteBuffer mbb = fc.map(MapMode.READ_WRITE, 0, length);
        String format = "yyyy/MM/dd HH:mm:ss";
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        while (true) {
            String now = sdf.format(new Date());
            byte[] b = now.getBytes();
            mbb.rewind();
            mbb.put(b, 0, b.length);
            mbb.force();
            Thread.sleep(1000);
        }
    }
}
import java.io.File;
import java.io.RandomAccessFile;
import java.nio.MappedByteBuffer;
import java.nio.channels.FileChannel;
import java.nio.channels.FileChannel.MapMode;
import java.text.SimpleDateFormat;

public class SmRead {

    public static void main(String[] args) throws Exception {
        File file = new File("c:/mem.txt");
        int length = (int) file.length();
        String mode = "rw";
        FileChannel fc = new RandomAccessFile(file, mode).getChannel();
        MappedByteBuffer mbb = fc.map(MapMode.READ_WRITE, 0, length);
        String format = "yyyy/MM/dd HH:mm:ss";
        SimpleDateFormat sdf = new SimpleDateFormat(format);
        byte[] b = new byte[format.length()];
        while (true) {
            mbb.rewind();
            mbb.get(b, 0, b.length);
            String now = new String(b);
            System.out.println(now);
            Thread.sleep(1000);
        }
    }
}
reference : http://www.javaworld.com.tw/jute/post/view?bid=29&id=273887