2015-02-01から1ヶ月間の記事一覧

C#でMethod全体を排他ロックする

javaのsynchronized相当の機能、c#では属性を指定します。 using System.Runtime.CompilerServices; [MethodImpl(MethodImplOptions.Synchronized)] public void SomeMethod() { // sync code }プロパティのget/setにも以下のように指定できます。 public in…

imageをbyte配列に変換する

private byte[] ImageToBinary(Image targetImage) { using (var mem = new MemoryStream()) { mem.Position = 0; targetImage.Save(mem, ImageFormat.Bmp); byte[] buffer = new byte[mem.Length]; mem.Position = 0; mem.Read(buffer, 0, (int)mem.Length)…

Dispatcherによる、UI更新

別スレッドによるUI更新は、invokeやpostmessageを使った更新遅延テクニックを使いますが、WPFで標準的に利用されているDispacherクラスを利用したUI更新を使うことができます。むしろ、今後はこの更新テクニックが主流であるといえます。Postmessageは役割…