まーきのブログ

ニコ動三昧の日々で思ったことなど

ニコニコランキングメーカーの差分作成を並列で処理する

ニコニコランキングメーカーをマルチスレッドで処理できないかという要望を頂きました。

調べてみると、リスト作成・更新タブの差分作成で使用している「ランキングデータファイルに指定の動画IDが存在するかチェックする」という共通処理が並列化できそうでしたので、実装しました。

差分作成では、例えば1万件のランクファイル同士の差分を求めるのに1億回の総当たりを行いますが、今までCPUを1スレッドしか使用していなかったのでかなりの時間がかかっていましたが、全スレッドを使用するようになりましたのでかなり時間が短縮されました。

処理の並列化にはC#のバージョンを上げる必要がありましたので、.NET Frameworkを4.0に上げました。Windows10では問題なく動くと思います。



また、タグ検索で複数の条件指定が出来ないかという要望も頂きました。

そこで、「投稿日時」+α が指定出来るように「投稿日時指定を併用」を追加しました。

使い方ですが、まず検索順を「投稿日時が新しい or 古い順」にして投稿日時を指定します。
この時に「投稿日時指定を併用」にチェックを入れます。



次に、別の検索順に移動し、2つめの条件を指定します。
下の例では、再生数が10000以上を指定しています。
この状態で検索すると、上で指定した投稿日時+再生数10000以上で検索します。



「投稿日時指定を併用」は「条件指定」にチェックが入っている時のみ有効です。
「投稿日時が新しい or 古い順」を選んで検索した時はこのチェックに効果はありません。



その他、マイリストの説明文更新で、8月に「マイリストメモ」の更新に対応しましたが、公式動画の場合に更新が出来ていませんでしたので、公式動画にも対応しました。



以上に対応したニコニコランキングメーカーをアップロードしました。
パスワードは「NRM」です。

https://u6.getuploader.com/ondouru/download/546/nicorank30620.zip


【03/16追記】
視聴ページ変更のため動画DLが出来なくなっていましたので対応しました。