2013-01-01から1年間の記事一覧

.NETからGStreamerを使ってみる

GStreamerとは クロスプラットフォームのマルチメディアライブラリ。映像や音声の入力(デバイスでもファイルでもよい)をエンコードしたり、RTMPでストリーミングしたりとか、そういったものを簡単に作ることができる。なお、.NETからGStreamerをつかう実例…

VAIO Z21にWindows 8.1をクリーンインストールしてみた

Windows 8.1 PreviewのISOをダウンロードする権利がある(MSDN Subscriptionを持ってる)ので、VAIO Z21にクリーンインストールしてみた。なんかもうMSDNでなくてもISOをダウンロードできたらしい(http://windows.microsoft.com/ja-jp/windows-8/preview-is…

大なごやJSでHaxe/JavaScriptの発表してきました

FIRST STEP to Haxe/JavaScript from terurou

.NET FrameworkのThreadPoolサイズ

プロセスごとに、1 つのスレッド プールがあります。 .NET Framework 4 以降では、プロセスのスレッド プールの既定のサイズは、仮想アドレス空間のサイズなど、いくつかの要素によって決まります。 スレッドの数は、プロセスで GetMaxThreads メソッドを呼…

F#というか.NETにJavaのAtomicBooleanがなかったので実装してみた

タイトルの通り、.NETにはJavaのAtomicBoolean(CAS操作のできるBoolean)が存在しないので、適当に実装してみた。スレッドセーフを保障しつつ、一回だけ処理を走らせたい場合なんかに使うと思う。 実装例 ここの例はF#だけど、Interlockedを使ってるだけな…

F#でUnitTest

F#

やりたいこと Visual Studio 2012に統合された形でF#のUnitTestを書きたい/動かしたい。 xUnit.netを使う場合 特にテスティングフレームワークには拘りはないのだけど、なんとなくNUnitよりもxUnit.netの方が好きなので、動くようにしてみた。FsUnitというや…

デバッグ中にAsync.FromBeginEnd内部でExceptionが発生すると、デバッガが止まってしまって邪魔くさい

F#

F#でちょっと非同期Socketのコードを書いてるんですが、 type Socket with member this.AsyncReceive(bytes, flags) = Async.FromBeginEnd(bytes, flags, (fun (_, _, callback, state) -> this.BeginReceive(bytes, 0, bytes.Length, flags, callback, stat…

Re: HaxeとTypeScriptを両方使ってみた感想

HaxeとTypeScriptを両方使ってみた感想 - ジンジャー研究室 に対してのコメント。コメント欄ではレスを書くには余白が狭すぎです。 if式について HaxeのifはBool型しか受け付けないため、存在判定はnullとの比較が必須になる。JavaScriptからHaxeに移行する…

ごく普通の会社で社内勉強会・社内研修みたいのを散々やってきたけど、あまり成果が出てこなかった話でもひとつ。

社内勉強会ネタがなんか盛り上がってますね。2004年ぐらいから散々やってきましたが、大きな成果を得られていないみたいな話でも書いとこうかと思います。 認識してる元ネタ 社内勉強会をやらない理由 - 勘と経験と読経 社内内弁慶を社外勉強会に参加させる…

【訂正エントリ】jsdoc3の使い方が間違ってると指摘を受けたので再評価した

以前、JavaScriptのAPIドキュメント生成ツールを調べてみたら、YUIDocが割とよかった - DenkiYagiというエントリで「jsdocゴミっぽい」と書いたのだが、「それアノテーションの使い方が間違ってる」とツッコミが入ったので、再評価してみた。 インストール j…

F# の非同期ワークフローがよくわかってない

F#

F# 3.0で以下のコードが期待通りに動かない理由がよくわかってない。Ctrl+Cを押してもプログラムが終了してくれない。Wait()したままになる。 open System [<EntryPoint>] let main argv = Async.StartAsTask(Async.AwaitEvent(Console.CancelKeyPress)).Wait() printfn </entrypoint>…

QyotoではQMLは使えないっぽい

QyotoにQMLをホストするためのQDeclarativeViewが存在しないのでどうしようもない。PySideやPyQtにはあるのになぁ。QyotoがQt5に対応した時にサポートしてくれるのを期待するしかないですね。

ローカルマシンのIPAddressを取得するのに Dns.GetHostEntry(Dns.GetHostName()) とか使えない

.NETでSocketをたたくコードをMSDNのサンプルをもとに書いてたのだけど、Socket#Bind()でエラーが出て少しハマった。よく考えればわかることなんだけど、Dns.GetHostEntry(Dns.GetHostName())だと、ipv6アドレスやHyper-Vの仮想NICとかのインターフェースも…

T4 Templateで.uiファイルをコンパイルするツール作った

このツールと同じディレクトリに存在するuiファイルすべてをコンパイルするだけのツールです。ソリューションファイル追加していない(Visual Studio上に表示されていない).uiファイルもコンパイル対象になります。ライセンスは一応MITライセンスにしてあり…

.uiファイルをC#のソースコードにコンパイルしてみる

QtにはQUiLoaderを使って動的に.uiファイルを読み込む他に、.uiファイルをコンパイルしてソースコードを生成する仕組み(uic)があるようだ。で、Qyotoにもないかと調べたら、uics.exeという怪しげなexeがあったので試してみたら動いた。ちなみにcsrcc.exeと…

.uiファイルから画面を表示してみる

Qt libraries 4.8.4 for WindowsをインストールしたらDesignerが同梱されていた*1。折角なのでQyotoからDesignerで作成した画面定義ファイル(.ui)からWindowが表示できないか試してみた。結果、以下のようなコードで表示できた。QUiLoaderを使ってるだけで…

QyotoでWindowを表示してみる

ここ数日、気まぐれでQyotoというQtの.NETバインディングを試している。とりあえず空のWindowを表示するまでで苦労したので、メモっておく。 インストールするもの Qt libraries 4.8.4 for Windows (minGW 4.4) Qyoto 4.0.6が依存しているのがMinGW版のQt4.8…

SilverlightでWebSocketのメモ

ちょっと調べたので備忘録。OutOfBrowser + WebSocket4Net で一応使えるのだけど、SilverlightにはSslStreamが存在しないので、SSL/wssでは通信できない。微妙。

Ext JS 4.1.xでComponentのルート要素をカスタマイズしたい

configのautoElを設定するだけでOK。てかアンドキュメントな事が多すぎるから、もっとマニュアルどうにかしてほしい。 new Ext.Component({ autoEl: { tag: "div", //spanとかにもできる tabindex: 1, onfocus: "console.log('focus')", "x-data-hoge": "hog…

keydownイベントでpreventDefault()した際のkeypressイベントの扱いがブラウザによって異なる

こんな感じのコードで検証。 window.onload = function () { var body = document.body; body.onkeydown = function (e) { if (window.event) { window.event.returnValue = false; } else { e.preventDefault(); } console.log('keydown'); } body.onkeyup …