The SeaBass project is a new Web application server to be able to develop the system development easily by present Java. For instance, I want to strengthen the function often used in Japan like Mail Sending, the slip print, and the template functions etc.
Seabass Native I/O.
********************************************************************************
対応CPU X86系 対応OS Windows(32/64) Linux(32/64)
********************************************************************************
Javaでは出来ない、メモリ操作関連を実装したパッケージです。
また、Javaでは速度が遅いファイルI/O関連を改善しています。
このパッケージを利用した場合、いくつかの利点が存在します。
・java.nio.DirectByteBufferは、速度が遅い。
それに比べ、このパッケージでのNativeメモリ操作は、高速である。
<100byteの情報に0~99までの100情報を100万ループ処理。これを5回ループした結果>
ByteBuffer(Direct):time:974msec JavaMemoryの約1.69倍遅い
Seabass Native I/O:time:683msec JavaMemoryの約1.18倍遅い DirectByteBufferと比べて1.42倍速度が速い.
JavaMemory:time:575msec
・java.io.RandomAccessFileオブジェクトは、速度が遅い。
それに比べ、このパッケージでは、約3倍の高速化が見込める。
Seabass Native I/Oでは、Javaのパッケージと比べ、Nativeメモリや
ファイルI/Oの高速化を期待出来ます。
しかし、欠点としては、C言語と同じでメモリ解放を自分で行う必要があるので、
メモリリーク等の欠点があります。
また、プロセスのメモリを直接操作するので、メモリ範囲外を書き込んだりすると
Javaプロセスが強制終了したりもします。
初版
indexOf,lastIndexOfを追加