エイプリルフールネタ


L2j Server Project
jKittyプロジェクトktkr!!!
てか、トップが軽くうぜえw
jKittyのjは、Japanのjってわけではなくて、Javaのjだと思いますw
昨日Eclipse起動してSVNみてたら、jKittyなるプロジェクトが入ってたんすよね
コミュニティサーバーのプロジェクトがいきなり始まってたりするんで、なんかのプロジェクトかなーって思ってたら、4/1ネタとはw
実行はまだしてませんw


L2J Server • View topic - Javolution/Trove/Java
こっちは真面目に技術ネタw
訳しようかと思ったけど、まだしてねーw
と、全力で寝たり2chしてぼーっとしてたから、なんもいえんのすけどねw
フォーラムにログインしてないとみれないぽいんで、内容の一部をペタリ

Javolution/Trove/Java
by Forsaiken » Thu Feb 18, 2010 9:43 pm

Hi.

Just wanted to give u some infos about all that FastMap/TIntHashs.

We start with: FastMap
A FastMap is nothing else then an regular HashMap/THashMap, but has a big difference... all entries are LINKED!
Thats also the reason why FastMap iterations are much faster then iterating over an HashMap or using forEach on THashMap.

Whats "setShared()" on FastMap?
This flag does 2 things:
1: The linked entries never loose it`s links to the prev/next entry which results in an "save" iteration while removing/adding values to an map.
2: It will self synchronized when adding/removing values, like "synchronized(map){map.put(key, value);}"
Ofc this synchronisation slows down the FastMap because it must enter the thread monitor when adding/removing values.

Well Trove is not far away form the Java originals (in basics) but as u know it use primitive datatypes as key/value. So far u need to sync every access to the map if u don`t want urgend exceptions or fails. ReentrantReadWriteLock is ur friend again.

When to use Trove, Java, Javolution?