大手コンピュータ・メーカー勤務。入社以来10数年をソフトウェア開発の現場で過ごし,その後ソフトウェア品質部へ異動。現場への技術支援や品質教育開発などを主に行っている。「APIで学ぶWindows徹底理解」(日経BP社)などを執筆。 前回,前々回と,複数のプロセス,複数のスレッドがどのような仕組みで同時に実行できるかについて説明をしてきた。その中でも少し触れたが,複数の処理が並行して実行される場合には,ある重要な問題を考慮しなければならない。「同期」である。 単独で動作するシングル・スレッドのアプリケーションしか書いたことがない人にはなじみのない言葉だろう。しかし同期は,Windowsだけでなく,並列処理が可能なシステムでは,必ず考慮しなければならない事項である。これは,プログラム言語としてマルチスレッドをサポートしているJava言語に,同期を実現するためのキーワードが定義されていることから
* Events can be used for resource counting, but they do not keep track of the count for you. Critical Section Critical sections are one of the more primitive synchronization objects in Win32. They synchronize exclusive access to shared data between threads within a single process. As long as no contention for gaining access to a critical section exists, the critical section code runs entirely in u
■ はじめに ひとつのプログラムを完成させるまでには、多くの場合「デバッグ」という作業が必要です。 まったくバグのないプログラムを一気に書き上げるのは難しいことですから、 プログラミングの際には実行時のエラーを見つけやすくするための工夫が必要ですし、 実際にエラーが発生した場合にはできるだけ手際よく対処したいものです。 デバッグを行う上での最初の目標である「原因の特定」を効率的に行うための ツールや流儀はプラットフォームや使用言語により一様ではありませんが、 ここではネイティブな Windows プログラムをデバッグする上で役に立つ小技をいくつかとり上げてみたいと思います。 今回は、自作のプログラムの実行中にプロセスが異常終了する状況において、 問題箇所を手早く探すための方法のひとつをご紹介します。 記事では Microsoft Visual C++ を開発環境と想定しています。 どうやら
coLinux で Emacs の kill-ring の内容をWindowsのクリップボードと同期する - odz buffer coLinux 上の Emacs の kill-ring の内容をWindowsのクリップボードと同期する by Perl - naoyaのはてなダイアリー 「これdRubyなら簡単にできるんじゃね?使ったこと無いけど。」と思い立ったので書いてみた。 Windows側 require 'drb/drb' require 'kconv' require 'win32ole' require 'win32/clipboard' DRb.start_service('druby://hogehoge:12345',Proc.new {|s| Win32::Clipboard.data = s.tosjis }) sleepcoLinux側 #!/usr/bin/ru
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く