- 追加された行はこの色です。
- 削除された行はこの色です。
*参照元 [#a5e1e0ac]
#backlinks
*説明 [#z516ea87]
-パス: [[linux-2.6.33/kernel/workqueue.c]]
-システムのワークキューに仕事を追加する。
--[[linux-2.6/ワークキュー]]
**引数 [#c5feef5d]
-struct work_struct *work
--システムのワークキューに追加したい仕事。
**返り値 [#mf60102d]
-int
--仕事をキューに追加した場合は 1、
キューに追加しなかった場合は 0(既にキューに追加されているなど)
**参考 [#s619c6c5]
*実装 [#w171b37e]
/**
* schedule_work - put work task in global workqueue
* @work: job to be done
*
* Returns zero if @work was already on the kernel-global workqueue and
* non-zero otherwise.
*
* This puts a job in the kernel-global workqueue if it was not already
* queued and leaves it in the same position on the kernel-global
* workqueue otherwise.
*/
int schedule_work(struct work_struct *work)
{
return queue_work(keventd_wq, work);
-
-keventd_wq は static 変数、workqueue_struct 型、init_workqueues() で作成。
-システムのワークキューに仕事を追加する。
--[[linux-2.6.33/workqueue_struct]]
--[[linux-2.6.33/init_workqueues()]]
--[[linux-2.6.33/queue_work()]]
}
EXPORT_SYMBOL(schedule_work);
-ライセンスに関係なくシンボルを公開する。
--[[linux-2.6.33/EXPORT_SYMBOL()]]
*コメント [#i4c59d76]