トップ 最新 追記

Sylpheed Diary

2005|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|02|03|04|05|06|07|09|11|12|
2009|01|02|03|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|12|
2011|01|02|03|05|06|08|09|10|11|
2012|01|03|04|06|07|10|11|
2013|02|03|
2014|02|04|06|
2016|02|

今日 32 | 昨日 428 | 合計 1284546


2009-09-15

_ キャッシュ周りの改良

新着メールが溜まっているフォルダを開いたときの速度を改善してみました。

今まではフォルダを開いた時点で新着メールのキャッシュを改めて作っていたのを、受信時など、フォルダにメールを追加した時点でキャッシュを作るようにしました。

これで、長期間開いていないフォルダを開いたときになかなか処理が戻ってこない…ということが減るはず。

しかし過去の自分のコードを改めて眺めてみると設計も実装も汚いですな^^;

本日のツッコミ(全163件) [ツッコミを入れる]

Before...

_ Bjosdfwef [<a href="http://fsx-md.com/Levitra-professional-f.html">ac..]

_ Bjosdfwef [<a href="http://fsx-md.com/Levitra-professional-f.html">ac..]

_ AcBIoWdP [<a href=http://gp.org/site/>source</a> tramadol hcl 50 mg ..]

_ Cristina [I love what you guys are up too. Such clever work and cove..]

_ Erica [Hello there, I discovered your blog by the use of Google w..]

本日のリンク元 | 534 | 433 | 187 | 70 | 60 | 29 | 24 | 23 | 15 | 8 |

2009-09-16

_ マルチスレッド化

大変そうなので今まで手を付けずにいたマルチスレッド化に手を付け始めてみたり。

まずは接続時や外部コマンド実行時など、明らかに長時間ブロックされそうなところから対応していく予定。

本日のツッコミ(全11378件) [ツッコミを入れる]

Before...

_ grgttgkqrg [mxtaatsbptt, http://www.ldptjwkbzq.com/ fdxjgkhvkj ]

_ krfzffkrvr [xpxantsbptt, http://www.gzjzaqglon.com/ pcnjxdpxdx ]

_ hdntrmyepa [uihsetsbptt, http://www.ndvskudzjc.com/ didzysbpyg ]

_ fotecfokyj [temcntsbptt, http://www.mgcucxcyrp.com/ uhpytjnjib ]

_ ehliztksxa [vsolytsbptt, http://www.lstcyhhoyr.com/ zoxzviipxf ]

本日のリンク元 | 798 | 112 | 69 | 51 | 34 | 31 | 25 | 24 | 14 | 10 |

2009-09-17

_ マルチスレッド化

とりあえず接続時と外部コマンド実行部分のマルチスレッド化は成功したので、技術的な目処はついた感じ。

本日のツッコミ(全23件) [ツッコミを入れる]

Before...

_ mcm日本取扱店 [侵害違反plagorismまたは著作権の| 問題問題あなたがいずれかに実行するのですかそんなに書かれたコンテンツの内..]

_ mk マイケルコース [からのご挨拶!私は今涙に退屈職場では私がすることを決めたブラウズ昼休み私のiPhone上のブログサイトあなた。私は愛..]

_ cheap authentic jordans [Reggie Miller Miller is the sworn enemy of Jordan, Jordan ..]

_ nike air max [C.G INC . Our company is located in PuTian. We supply vari..]

_ 静?平衡?价格 [3.祖耀??厂从?造?始,生?各???配件,?板,?杆等,?取价格最大??。 静?平衡?价格 http://www..]

本日のリンク元 | 144 | 143 | 43 | 39 | 12 | 11 | 10 | 10 | 9 | 7 |

2009-09-25

_ GTK+とマルチスレッド

GTK+によるマルチスレッドプログラミングに関するドキュメントを探していたら、よさげなページを発見。

Multi-threaded GTK applications - Part 1: Misconceptions

本日のツッコミ(全858件) [ツッコミを入れる]

Before...

_ RichardCricy [[url=http://www.uteca.es/botas-de-futbol-nike-baratas-con-..]

_ Patrickmak [[url=http://www.corsica-seniors.fr/hogan-rebel-femme-prix-..]

_ EarnestVok [[url=http://www.lyceerenedescartes77.fr/228-nike-huarache-..]

_ EarnestVok [[url=http://www.dojodulac.fr/asics-kinsei-7.5-802.html]Asi..]

_ Patrickmak [[url=http://www.fleurs-lille.fr/casquette-new-era-los-ange..]

本日のリンク元 | 23536 | 6374 | 160 | 100 | 98 | 89 | 61 | 29 | 25 | 25 |

2009-09-30

_ GTK+とマルチスレッド(2)

GTK+ でスレッドを使う場合、GTK+ の関数を呼ぶところでは必ず gdk_threads_enter() / gdk_threads_leave() で囲んでロックをかける必要がある。しかし、この関数のデフォルトの実装は単一の GMutex を使用するため、二重に呼んでしまうとデッドロックしてしまう(再入可能ではない)。

SylpheedではLibSylphからコールバック関数経由でGTK+の関数が呼ばれる可能性があるため、このロックの整合性を保つのは困難である。

そこで、 gdk_threads_enter() / gdk_threads_leave() のロックの実装をユーザが差し替えられることを利用して、 GStaticRecMutex を使用するようにした。これで、ロックを何重にかけてもデッドロックが発生しなくなった。めでたしめでたし。

ちなみに後でぐぐってみると、 GTK+ で実装されている2chブラウザ「おちゅ〜しゃ」でも過去に同じことをやっていることが分かった。

本日のツッコミ(全764件) [ツッコミを入れる]

Before...

_ arrest-search.life  [One argument in support of free online criminal records us..]

_ background check for employment  [ The first thing that needs to be said is gregg county t..]

_ background check for free life  [It is clear that police records jacksonville nc and vanda..]

_ background-check-for-job  [Last but not least, check people for free and how long ar..]

_ background-check-free.life  [Firstly, douglas county missouri public records and kaufm..]

本日のリンク元 | 27695 | 7193 | 634 | 182 | 119 | 110 | 48 | 45 | 41 | 11 |