Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

タグ

progとwindowsに関するWackyのブックマーク (28)

  • 並列プログラミング - .NET アプリケーションの並列処理についての過去、現在、未来

    このブラウザーはサポートされなくなりました。 Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。 .NET アプリケーションの並列処理についての過去、現在、未来 Stephen Toub 過去の並列処理 スレッドの直接操作は、応答性の高いクライアント アプリケーション、並列アルゴリズム、およびスケーラブルなサーバーを実現するために、以前から開発者が採用している方法です。しかし、この手法は、デッドロック、ライブロック、ロック コンボイ、2 ステップ ダンス、競合、オーバーサブスクリプションといったアプリケーションを望ましくない状態に陥らせる温床でもありました。Microsoft .NET Framework は、その誕生以来、専用の名前空間 (System.Threading) など、同時実行アプリケーショ

    並列プログラミング - .NET アプリケーションの並列処理についての過去、現在、未来
  • .NET開発者のための非同期入門 フリーズしないアプリケーションの作り方 - @IT

    連載目次 「エンド・ユーザーは、0.5秒のフリーズでストレスを感じ、3秒のフリーズはバグだと思う」。昔、冗談半分に言ってみた言葉だが、回りの反応を見るに、割とみな思っていることらしい。 特にモバイル端末向けのOSでは、応答性の悪いアプリケーションはOSによって強制終了されたり、マーケットプレイスでの審査に落ちたりする。フリーズしないアプリケーション作りがますます重要になっている。 そこで、稿では、フリーズしないアプリケーション作りに必要となる「非同期処理」*1について説明していく。 *1 時間のかかるAPIに対して、そもそも非同期版しか提供しないケースが増えてきている。Windows 8の新しいWindows API(WinRT)では、50ミリ秒以上かかるAPIを、すべて非同期なメソッドとして提供するそうだ。 ■非同期処理の今までとこれから ネットワークI/Oのように待ち時間の発生する処

    .NET開発者のための非同期入門 フリーズしないアプリケーションの作り方 - @IT
    Wacky
    Wacky 2011/10/01
    Taskクラス(System.Threading.Tasks名前空間)の追加(と、それに伴うスレッド・プールの性能改善)によって、非同期処理がだいぶ楽になった。同時に、データ並列を扱うためのParallelクラス(同名前空間)も提供されている。
  • IDropTargetによる圧縮

    Wacky
    Wacky 2011/01/10
    DropHandlerのCLSIDは先のDropHandlerのCLSIDとは異なっており、実際にCoCreateInstanceに指定して試したところ、ファイルの圧縮に成功することを確認しました。
  • IStorageによる展開

    前節では、IShellDispatchを使用してZIPファイルを展開しましたが、 今回はシェル拡張の機能を使用してZIPファイルを展開します。 シェル拡張とはシェルの機能を強化するためのDLLであり、 たとえばZIPファイル上でのコンテキストメニューに「すべて展開」という項目が追加されるのは、 シェル拡張の機能によるものです。 ZIPファイルに関連付けられているシェル拡張は、HKEY_CLASSES_ROOT\.zipから参照することができます。 既定のエントリに格納されているのは、シェル拡張のProgIDです。 これを基に関連するCLSIDを見つけるために、HKEY_CLASSES_ROOT\CompressedFolder以下を参照します。 ShellEx以下に存在するキーがZIPファイルに関連付けられているシェル拡張であり、 データとして格納されているCLSIDをCoCreateIn

    Wacky
    Wacky 2011/01/10
    シェル拡張の機能を使用してZIPファイルを展開します。
  • IShellDispatchによる展開

    ハードディスクの増量が進む今日においても、ファイルを圧縮して運用することは日常的に行われています。 Windowsにおけるファイルの圧縮フォーマットはMicrosoftが開発したCAB形式が有名ですが、 Windows XPからはZIP形式に標準対応したこともあり、最近ではZIPファイルによる圧縮もよく見かけるようになりました。 ZIPファイルにおける圧縮や展開の機能はzipfldr.dllに実装されていますが、 開発者にとって残念なことに、このDLLの使い方はリファレンス化されていません。 つまり、ZIPファイルを扱うための関数やインターフェースが分からないため、 正規の方法で圧縮や展開を行うことができません。 今回から取り上げる内容は、既存のCOMインターフェースを応用した非正規の方法であるため、 実際に使用する場合は十分に注意してください。 今回使用するインターフェースはIShell

    Wacky
    Wacky 2011/01/10
    IShellDispatchを使用してZIPファイルを展開します。
  • MSDNフォーラムから見るAzure開発のノウハウ(1)

    はじめに Windows Azureも今年1月に正式提供が開始されて、そろそろ業務で格的な活用を検討されている方も増えてきていると思います。ただ、実践的なノウハウはまだ集積されておらず、日のMSDNフォーラムなどでも質問数がポツポツと出てきたかなという感じです。おそらく試行錯誤している段階ではないかと思います。 その点、USは活況なようでUSのMSDNフォーラムには週に60件以上の質問と回答が交わされています。私は米国のMSDNフォーラムをウォッチしていますが、質疑応答のなかには目を引くような面白いアイディアやFAQになると思うようなハマリどころがたくさんありました。 連載では、その中から筆者がこれは面白いと判断したものや、FAQとしてぜひ日で紹介したいものを独断と偏見でレベル分けをしたうえで、質問を再構成して内容やポイントを解説していきます。 1)incremental depl

    MSDNフォーラムから見るAzure開発のノウハウ(1)
  • Windows上で動作するオープンソースプロジェクトのパッケージシステム

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    Windows上で動作するオープンソースプロジェクトのパッケージシステム
    Wacky
    Wacky 2010/05/08
    CoAppのチームは、WAMP:Apache、PHP、Pythonの最初のエレメントをパッケージ化することからはじめて、それらを学んで行くことになる
  • 連載インデックス「楽しいWindows 7アプリ作成入門」 - @IT

    連載インデックス 「楽しいWindows 7アプリ作成入門」 「あんなこといいな」「できたらいいな」というアイデアをWindows 7の表現力で具体的な“アプリ”という形にするには、どうすればいいのだろうか? 具体的なコードやデモとともに一から教えます マルチタッチのWindows 7アプリ作成の基礎 楽しいWindows 7アプリ作成入門(1) 画面を触って字や絵を描いたり、アプリを操作するには何をどうすればいいのだろう? 具体的なコードやデモとともに一から教えます

  • マルチタッチができるWindows 7アプリ作成の基礎

    マイクロソフトは2月23〜24日に、開発者向けイベント「Tech Days 2010」をお台場で開催した。稿では、セッション「Windows 7 アプリケーション開発実践」から、マルチタッチができるWindows 7アプリを作成するための実践的な入門方法を紹介する。 セッションの講演者は以下のとおり。

    マルチタッチができるWindows 7アプリ作成の基礎
  • The DirectShow Unraveled, DirectShow アプリケーションやフィルタの作り方

  • webBrowserコントロールでURLを指定しないでHTMLを表示 - MSDN フォーラム

    する方法はありませんか? プログラム内で変数(string)を宣言してその中にHTMLを生成したのですが、それをwebBrowserに表示するためにはファイルに保存して、保存したファイルの場所をURLで指定しなければ表示できないみたいです これだとディスクアクセスが発生してしまいます string でHTMLを生成して直接webBrowserのソースに指定したいのですが良い方法はありませんか?

    Wacky
    Wacky 2006/04/02
    一般的には、一旦 about:blank に Navigate し、DocumentCompleted 時に Document に対して Write します。
  • スタックオーバーフローのハンドリング (Stack Overflow Handling)

    作成日:2004.04.12 更新日:2006.02.19 更新記録 (2004.04.12) 3/6、 3/11、 3/13 の日記をまとめて作成。 (2004.05.07) 文章を修正。サンプルコードを追加。 (2005.01.20) alternative → alterante に修正。 (2005.02.13) 追記を記述。 (2006.02.17) linux_stack_info.cpp の実装に誤りがあったので修正。 (2006.02.19) BSD 系OS でのスタック領域情報の取得の仕方を追加 初めに C/C++ でプログラムをしているとつい忘れてしまうのがスレッドのスタックオーバーフローの問題。 最近の OS はスレッド当たり 2〜8MB のスタック領域を持っているため、よほどのことがない限りスタックが溢れてしまうことはない。 だが、再帰や alloca を積極的に使

    Wacky
    Wacky 2006/03/04
    この文書では主に UNIX 系 OS (Linux、Solaris) でスタックオーバーフローをハンドリングする方法について述べる。 WindowsNT 系についても少しだけ書く。
  • 組み込み向けクロス開発環境の構築

    5. GNU開発環境のビルド それでは、米FSFのホームページからGNU開発環境を入手し使用してみることにしましょう。どうでしょうか?必要なバイナリコードが見あたらないでしょうか?そうです。実は、米FSFのホームページからはクロス開発に使用するためのバイナリコードは配布されていません。といいますのも、開発するホスト、そしてターゲットとなるプロセッサの組み合わせは、無数に存在します。よって、これらのすべての組み合わせについてバイナリコードを配布することは不可能なのです。しかし、ここであきらめないでください。バイナリコードがなくてもソースコードが配布されていますので、ソースコードから簡単にバイナリコードをビルド(構築)することが出来るのです。 ここでは、多数の読者が利用していると思われるWindows 2000/XP環境を例にビルドし、開発環境を構築してみます。 開発環境の構築手順は、以下の通

  • ITPro エバンジェリスト のBlog : フォーラム : eXperts Connection

  • emit.jp - emit リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

  • Round関数は「四捨五入をする関数」ではありません。 - aspxの日記2009

    IEEE 754 ですねー。これを知らないデベロッパも多いと聞きます。 VB6において、丸め関数は"INT","FIX","ROUND"があります。 このうち、"ROUND"は「最も近い偶数に丸める」という四捨五入であり、一般的なものとは違います(よく嵌るワナ)。 「偶数丸め」は IEEE 754 で定められており、JIS や ISO にも同じ規定があります。 多くの Round() 関数の挙動もこの IEEE 754 に則った「偶数丸め」です。 浮動小数点数(ふどうしょうすうてんすう)は、コンピュータにおける実数の近似値の表現方式。 実際にやってみた '[VB6/VBScript(ASP)/VBA(Excelマクロなど)] MsgBox(Round(24.5)) '24.5を四捨五入で整数にすると25 '[VB.NET(ASP.NET)] MsgBox(Math.Round(24.5).

    Round関数は「四捨五入をする関数」ではありません。 - aspxの日記2009
    Wacky
    Wacky 2006/02/18
    「偶数丸め」は IEEE 754 で定められており、JIS や ISO にも同じ規定があります。
  • 彼の漏れのある抽象化の法則 - NyaRuRuが地球にいたころ

    C# は簡単である.ただし CLR の特殊な振る舞いに目をつむれば(id:NyaRuRu:20060117#p2). CLR は簡単である.ただし Windows の特殊な振る舞いに目をつむれば(id:NyaRuRu:20051022). C++ は簡単である.ただし Windows の特殊な振る舞いに目をつむれば(id:NyaRuRu:20060122#p1). Windows は簡単である.ただし CPU の特殊な振る舞いに目をつむれば(id:NyaRuRu:20050424).

    彼の漏れのある抽象化の法則 - NyaRuRuが地球にいたころ
  • Array Covariance - NyaRuRuが地球にいたころ

    修論審査も終わってひと段落なので,ここ半月ぐらいで気になっていたエントリをぼちぼち消化していこうかと.というわけで「soutaroにっき」より. List<string>を、ComboBoxに.Items.AddRangeを使って追加しようと思ったら、これが大変。 List<string> list = ...; comboBox1.Items.AddRange(list.ToArray()); とすると、(AddRangeの引数の型である)object と(list.ToArray()の型である)string の間に継承関係がないためコンパイルできないのだ。これはhttp://www.hyuki.com/d/200508.html#i20050819104841の問題であり、完全に解決することは不可能である。 とりあえず System.Object と System.String の間に

    Array Covariance - NyaRuRuが地球にいたころ
  • DirectX Graphics フルスクリーンモードと窓使いの憂鬱 - NyaRuRuが地球にいたころ

    (2009年10月27日追記) 以下の問題は,ゲーム側のウィンドウリークとの複合問題であることが分かりました.『窓使いの憂』単独の問題ではなかったことをお詫び申し上げます. 詳細については『http://d.hatena.ne.jp/NyaRuRu/20091026/p1:title=』をご覧ください. サークルで作成しているゲームについて「フルスクリーン環境で実行した後にゲームを終了すると一般保護違反が発生する」という症状が報告されて,色々調べてみたところ原因は『窓使いの憂』にありました.どおりでこちらの環境で再現しなかったわけです.実際『窓使いの憂 Ver.3.30』を常駐させることで問題を再現できることを確認しました. 多くの場合こういう現象は「相性問題」という便利な言葉で真実に蓋をされてしまいがちですが…たまには「解」でもご覧あれ. クラッシュ時のスタックトレースはこんな感じ

    DirectX Graphics フルスクリーンモードと窓使いの憂鬱 - NyaRuRuが地球にいたころ
    Wacky
    Wacky 2006/02/18
    DllMain から user32.dll の API 呼び出しちゃまずいです
  • 2005-12-26

    @ITに『1msの分解能を得る方法について』というスレッドがありますが,アカウントが無いのでとりあえず眺めてます. このあたりについては昔,dobon さんのところの掲示板で書いたこともありますが,まあとりあえずは『インサイド Microsoft Windows』(asin:4891004738)あたりの知識は無いときついんじゃないですかね.当然スレッドスケジューラの話も絡んできますし. ちなみに DirectX SDK December 2005 で『Game Timing and Multicore Processors』というホワイトペーパーが追加されています.10月ごろに DIRECTXDEV-ML に流れていたこの辺の話ですね. Timers (October 2005, week 4) Timers (October 2005, week 5) とはいえこのホワイトペーパー,個

    2005-12-26