はじめに
「FastLinq」をプロジェクトに追加することで
高速な LINQ を使用できるようになります
インストール
Visual Studio メニューの「ツール>NuGet パッケージ マネージャー>
ソリューションの NuGet パッケージの管理」を選択します
「参照」タブを選択して、検索欄に「FastLinq」と入力して
表示された「FastLinq」を選択します
インストールしたいプロジェクトをチェックして「インストール」ボタンを押します
使い方
プロジェクトにインストールするだけで使用できます
速度検証
using System; using System.Diagnostics; using System.Linq; class Program { static void Main() { var count = 100000; var list = Enumerable.Range( 0, 100000 ).ToArray(); var sw = new Stopwatch(); sw.Start(); for ( int i = 0; i < count; i++ ) { list.Any( c => c == 0 ); } sw.Stop(); Console.WriteLine( sw.Elapsed.TotalSeconds ); } }
上記のようなコードで 100,000 個の要素に対して
各 LINQ の関数を 100,000 回呼び出したときにかかった時間(秒)を計測しました
関数 | 通常 | FastLinq |
---|---|---|
All | 0.0082 秒 | 0.0031 秒 |
Any | 0.0069 秒 | 0.0024 秒 |
Count | 115.3352 秒 | 79.9263 秒 |
DefaultIfEmpty | 0.0050 秒 | 0.0011 秒 |
ElementAt | 0.0072 秒 | 0.0013 秒 |
ElementAtOrDefault | 0.0073 秒 | 0.0016 秒 |
Skip | 0.0055 秒 | 0.0021 秒 |
Take | 0.0058 秒 | 0.0020 秒 |
ToArray | 26.5843 秒 | 25.4278 秒 |
ToDictionary | 853.9057 秒 | 467.7154 秒 |
ToList | 26.2227 秒 | 25.6572 秒 |