As of a few days ago, nsHashtable is officially deprecated and
nsTHashtable is the "new" hashtable implementation. nsTHashtable is more
"heap friendly" and in general requires a much smaller footprint than
nsHashtable.
The only hashtables you should be using in the mozilla codebase going
forward are:
- nsTHashtable
- pldhash
- plhashtable (from NSPR)
For more info on nsTHashtable and friends, please see Benjamin
Smedberg's excellent hashtable guide:
http://www.mozilla.org/projects/xpcom/hashtable-guide.html
(this document is a work-in-progress of course)
There are no plans to make a tree-wide sweep of nsHashtable to convert
it to nsTHashtable, there are simply too many of them. When he has time,
Ben has said he may go and convert some consumers here and there, so
please help out by reviewing code when he requests it. (Thanks Ben!)
Alec