This repository was archived by the owner on Mar 19, 2018. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathcollections_35.html
More file actions
58 lines (58 loc) · 3.52 KB
/
collections_35.html
File metadata and controls
58 lines (58 loc) · 3.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<meta name="generator" content=
"HTML Tidy for Mac OS X (vers 25 March 2009), see www.w3.org" />
<title>Scala 2.8 コレクション API -- ウィークハッシュマップ</title>
<link rel="stylesheet" type="text/css" href="guide.css" />
</head>
<body dir="ltr">
<table width="100%" cellpadding="0" cellspacing="2">
<tr>
<td bgcolor="#99CCFF"><a href="collections_36.html"><img border="0"
alt="並行マップ" src="next.png" /></a></td>
<td bgcolor="#99CCFF"><a href="collections_23.html"><img border="0"
alt="具象可変コレクションクラス" src="up.png" /></a></td>
<td bgcolor="#99CCFF"><a href="collections_34.html"><img border="0"
alt="ハッシュテーブル" src="previous.png" /></a></td>
<td align="center" bgcolor="#99CCFF" width="100%">
<b>ウィークハッシュマップ</b></td>
<td bgcolor="#99CCFF" align="center" class="tocref"><a href=
"collections_49.html">目次</a></td>
</tr>
</table>
<blockquote style=
"border-left: 1px solid gray; font-family: Century, Times, 'Times New Roman', 'MS Gothic', serif; padding-left: 1em;">
最新版は <a href="http://docs.scala-lang.org/ja/overviews/collections/concrete-mutable-collection-classes.html">Scala Documentation</a> に移行しました。
</blockquote>
<h2>ウィークハッシュマップ</h2>
<p>
ウィークハッシュマップ
(<a href=
"http://www.scala-lang.org/api/current/scala/collection/mutable/WeakHashMap.html"><tt>WeakHashMap</tt></a>)
は、ガーベッジコレクタがマップから「弱キー」への参照を追跡しないという特殊なハッシュマップだ。
他にキーを参照するものが無くなると、キーとその関連する値はマップから勝手にいなくなる。ウィークハッシュマップは、キーに対する時間のかかる計算結果を再利用するキャッシュのような用途に向いている。キーとその計算結果が普通のハッシュマップに格納された場合、そのマップは限りなく大きくなり続け、キーはガベージコレクタに永遠に回収されない。ウィークハッシュマップを使うことでこの問題を回避できる。キーオブジェクトが到達不可能になり次第、そのエントリーごとウィークハッシュマップから削除される。
Scala のウィークハッシュマップは、Java による実装 <tt>java.util.WeakHashMap</tt>
のラッパーである <a href=
"http://www.scala-lang.org/api/current/scala/collection/mutable/WeakHashMap.html">
<tt>WeakHashMap</tt></a> クラスにより実装されている。</p>
<p>続いては、<a href="collections_36.html">並行マップ</a></p>
<hr />
<table width="100%" cellpadding="0" cellspacing="2">
<tr>
<td bgcolor="#99CCFF"><a href="collections_36.html"><img border="0"
alt="並行マップ" src="next.png" /></a></td>
<td bgcolor="#99CCFF"><a href="collections_23.html"><img border="0"
alt="具象可変コレクションクラス" src="up.png" /></a></td>
<td bgcolor="#99CCFF"><a href="collections_34.html"><img border="0"
alt="ハッシュテーブル" src="previous.png" /></a></td>
<td align="center" bgcolor="#99CCFF" width="100%">
<b>ウィークハッシュマップ</b></td>
<td bgcolor="#99CCFF" align="center" class="tocref"><a href=
"collections_49.html">目次</a></td>
</tr>
</table>
</body>
</html>