*参照元 [#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]