[
自宅サーバーWebRing
┃
前
|ID=54
前後5表示
|
次
┃
乱移動
|
サイト一覧
]
このサイト内
書籍 DVD CD
Google(日本語)
Google(Web全体)
Google(イメージ)
Google(キャッシュ)
Yahoo! JAPAN
goo 英和
goo 和英
goo 国語
goo 新語
サイトマップ
リンク集
ダウンロード
フォーラム
Users Wiki
最新情報
TOP
»
xpwiki
»
xpWiki開発日記
» 2008-05-14のソース
|
新規
下位
一覧
検索
最新
ヘルプ
ページへ戻る
編集
複製
履歴
添付
Note
リンク元
印刷
Ver 3.71.26 - 27 (ゲートウェイ"jobstack"の追加 と flock:LOCK_UN 問題の修正)
のソース
xpwiki
:
xpWiki開発日記
/
2008-05-14
のソース
差分
を表示
xpWiki開発日記/2008-05-14
へ行く。
« Prev
#navi(../) #boxdate * Ver 3.71.26 - 27 (ゲートウェイ"jobstack"の追加 と flock:LOCK_UN 問題の修正) [#uaace787] &tag(基本設計,JobStack,ファイルロック,JobStack); ** 概要 [#s269f8d4] - バックグラウンド処理を逐次実行するゲートウェイ "jobstack" を追加した。 - ゲートウェイ "bgrun" を廃止した。 - fclose($fp) をする前に flock($fp, LOCK_UN) をすべきではないので、その修正をした。 ** ゲートウェイ"jobstack"の追加 [#vb0dc2b8] バックグラウンド処理を登録し、アクセスがある度に一件ずつバックグラウンドで処理をする仕組みを新たに追加しました。 それに、伴い ゲートウェイ "bgrun" を "jobstack" に統合しました。 プラグインを作成する時の参考となりますので、簡単に説明しておきます。 現状で、jobstack には、任意のHTTPアクセス(GETリクエスト)を行う "http_get" と ページ更新後の重い処理(plainDB 更新) を行う "plain_up" があります。 実際にジョブを登録するには、$this->func->regist_jobstack($data, $ttl) とします。 $data は、連想配列で例えば次のように指定します。 #code(php){{ $data['action'] = 'http_get'; $data['url'] = 'http://〜'; }} $ttl は整数値で、そのジョブが実行される有効期限を秒数で指定します。省略可能で省略時の値は 864000 (10日間) です。 "http_get" アクションは、アクションプラグインを呼び出し、各種処理を行ったりすることに利用できます。 "plain_up" アクションは、内部的に func->need_update_plaindb() 内で使われています。プラグインでのコンバート時、plainDB のリフレッシュを行いたい場合は、$this->func->need_update_plaindb($page) とすればOKです。$page は省略可能で省略時の値は $this->root->vars['page'] の値となります。 ** flock:LOCK_UN 問題の修正 [#wab6afb2] pukiwiki.dev の [[pukiwiki.dev:BugTrack2/306]] に上がっていた問題です。 fopen() でオープンし flock() でファイルロックを掛けた後、fclose() の前に flock() でアンロックすると、バッファに溜まっているデータがフラッシュされる前だとファイルが壊れることがあるという問題です。 自分なりに簡単に調べてみたところ、確かにそのようでしたので、その修正を行いました。 ** CVS 更新内容 [#x01525bb] #region(今回の更新分){{ -2008-05-14 16:17 nao-pon --* xoops_version.php (1.342): ---Version 3.71.27 -2008-05-14 16:16 nao-pon --* class/attach.php (1.3), class/func/pukiwiki_func.php (1.167), plugin/ajaxtree.inc.php (1.8), plugin/code.inc.php (1.19), plugin/counter.inc.php (1.6), plugin/dump.inc.php (1.7), plugin/fusen.inc.php (1.24), plugin/online.inc.php (1.2), plugin/tb.inc.php (1.2): ---"flock($fp, LOCK_UN)" is needless before "fclose($fp)". -2008-05-14 14:08 nao-pon --* ways/jobstack.php (1.2): ---Changed "error_reporting" from "E_ALL" to "0". (include ver 3.71.26) -2008-05-14 14:00 nao-pon --* class/func/xpwiki_func.php (1.166): ---Added runtime flag "root->rtf['plaindb_up_now']". -2008-05-14 13:31 nao-pon --* xoops_version.php (1.341): ---Version 3.71.26 -2008-05-14 13:28 nao-pon --* plugin/: aws.inc.php (1.4), isbn.inc.php (1.8), showrss.inc.php (1.9): ---Call function "need_update_plaindb()" on data update. -2008-05-14 13:27 nao-pon --* ways/bgrun.php (1.7), ways/jobstack.php (1.1), class/xpwiki.php (1.82), class/func/xpwiki_func.php (1.165), class/include/init.php (1.50), ini/pukiwiki.ini.php (1.74): ---Added a gateway "jobstack" and remove "bgrun". }} ** 一行コメント [#y85268d3] #comment #navi(../)
« Prev
xpWiki開発日記/2008-05-14 のバックアップ一覧
xpWiki開発日記/2008-05-14 のバックアップソース(No. All)
1: 2008-05-16 (金) 23:21:01
nao-pon
2: 2008-05-16 (金) 23:21:01
nao-pon
現: 2008-05-16 (金) 23:21:01
nao-pon
ぺージ情報
ぺージ名 :
xpWiki開発日記/2008-05-14
ページ別名 :
未設定
ページオーナー :
nao-pon
閲覧可
グループ :
すべての訪問者
ユーザー :
すべての訪問者
編集可
グループ :
すべての訪問者
ユーザー :
すべての訪問者
Counter: 306, today: 1, yesterday: 0
メインメニュー
ホーム
価格比較 百貨
UsersWiki
xpwiki
新規ページ作成
最新ページ一覧
全ページ一覧
人気のページ
全コメント一覧
xpWikiフォーラム
スキン選択
ヘルプ
» 関連ページ
» 編集する
» 変更点を見る
» バックアップ一覧
» 添付ファイル一覧
» リンク元一覧
お問い合わせ
ファイルマネージャー
ログイン
ユーザー名:
パスワード:
パスワード紛失
|
新規登録
オンライン状況
1052 人のユーザが現在オンラインです。 (5 人のユーザが xpwiki を参照しています。)
登録ユーザ: 0
ゲスト: 1052
もっと...
サイト情報