Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Garbage Collection in .NET Framework
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
tanaka_733
October 26, 2013
Technology
3k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Garbage Collection in .NET Framework
プログラミング.NET Framework 第4版 座談会 での発表資料
tanaka_733
October 26, 2013
More Decks by tanaka_733
See All by tanaka_733
SRENEXT 2020 [B5] New RelicのSREに学ぶSREのためのNew Relic活用法
tanaka733
2
11k
Calling PowerShell from CSharp
tanaka733
0
2k
New Features in Visual Studio 2013
tanaka733
0
1.1k
Starting Unity for Windows Store App
tanaka733
0
870
とあるインフラエンジニアのAzure活用
tanaka733
2
620
ぼくの考えた割と普通(c)なデプロイ戦略
tanaka733
1
11k
ASP.NET MVC4 Web APIをバックエンドにして作るストアとWindows Phoneプッシュ通知アプリ
tanaka733
0
1.9k
Yurufuwa_CSharp.pdf
tanaka733
0
5.1k
Windows ストアアプリで Push通知を使いこなそう
tanaka733
0
2k
Other Decks in Technology
See All in Technology
Forza Horizon 6 のテレメトリ機能で 自動運転に使えそうな学習データを集める話
henjin0
0
170
クラウドセキュリティ入門 ~安全なクラウド利用のための基礎知識~
lhazy
13
8.7k
【CEDEC2026】次世代デジタルカードゲームのサーバー設計と運用 〜『Shadowverse: Worlds Beyond』の舞台裏~
cygames
PRO
1
1.2k
AIエージェントを前提としたプラットフォーム エンジニアリング:GKEで作るAgent-Ready Golden Path
legalontechnologies
PRO
2
230
[ChatGPT Work LT]事務作業が苦手な人のための バックオフィスの「半」自動化
chimaki_iot
0
280
Agent 時代の Kaggle 展望 / kaggle-in-the-agentic-era
upura
1
710
つくって納得、つかって実感! 大規模言語モデルことはじめ ver2.0
recruitengineers
PRO
4
1.6k
【Google Cloud Next Tokyo'26】Gemini Enterprise と Oracle AI Database で実現する、業務データ活用を実現する AI エージェント実装
shisyu_gaku
0
250
サイバー捜査員研修(後半)
nomizone
1
870
ブラウザ研修 2026
recruitengineers
PRO
6
980
Service Connect 上のサービスに ECS Service の外側から到達できなかった話
ota1022
1
240
Webアクセシビリティ入門 2026
recruitengineers
PRO
3
560
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
108
250k
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
Fireside Chat
paigeccino
42
4k
Why Our Code Smells
bkeepers
PRO
340
58k
The Language of Interfaces
destraynor
162
27k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
640
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.9k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
YesSQL, Process and Tooling at Scale
rocio
174
15k
From π to Pie charts
rasagy
0
270
Transcript
None
http://tech.tanaka733.net http://www.buildinsider.net/web/iis8 http://metrostyledev.net/
None
Building a Faster Ruby Garbage Collector Twitterが、Ruby on RailsからJavaVMへ移行する理由 Ruby
2.1がガベージコレクションを変更,大規模システムでの批 判に対処
None
Garbage Collection
None
ネイティブヒープ (OS) 仮想アドレス空間(GCセグメント) .NET CLRが管理 32bitプロセス:1.5GB 近く、64bit: 8TB近くまで
マネージヒープ
None
Rocksee on Flickr viaESP
マーキング 再配置 コンパクション
None
None
空き 空き
空き 空き
空き
None
Ctd 2005 on Flickr viaESP
オブジェクトが新しいほど、生存期間は短い オブジェクトが古いほど、生存期間は長い ヒープの一部分の回収は、全体の回収より高速
gen 0 gen 1 gen 2
gen 0 gen 1 gen 2
gen 0 gen 1 gen 2
None
None
None
None
None
None
None
None
None
None
None
None
None
class MyClass { ~MyClass() { //Finalizeメソッド } }
James Cridland on Flickr viaESP
System.IDisposable static void Main(string[] args) { FileStream fs = null;
try { fs = new FileStream("Temp.txt", FileMode.Create); fs.Write(new byte[]{1, 2, 3, 4}, 0 , 4); } finally { if (fs != null) { fs.Dispose(); } } } static void Main(string[] args) { using (var fs = new FileStream("Temp.txt", FileMode.Create)) { fs.Write(new byte[] { 1, 2, 3, 4 }, 0, 4); } }
None
None
None
http://msdn.microsoft.com/ja-jp/library/fs2xkftw(v=vs.110).aspx public void Dispose() { Dispose(true); GC.SuppressFinalize(this); }
None
None
None
None
None
None
None
None
http://msdn.microsoft.com/ja- jp/library/vstudio/ee851764(v=vs.110).aspx
None
None
プログラミング .NET Framework 第4版 http://msdn.microsoft.com/ja- jp/library/vstudio/hh156531(v=vs.110).aspx C#プログラマのための.NETアプリケーション最適化技法
using
None
None