Laravel计划任务的回调函数是多线程执行的吗?

Log::info('[GAS][计划任务][开始执行----------------------]');

$this->schedule->call(function () {
    //腾讯统计
    $this->gasOrderTotalForCustomerId(config('gas.customer_id.tencent'));
})->everyMinute()->description('GAS模块订单数据统计');

Log::info('[GAS][计划任务][执行结束----------------------]');

日志文件,按照顺序的话,“执行结束”应该在最后一行!

[2022-08-18 10:26:00] local.INFO: [GAS][计划任务][开始执行----------------------]  
[2022-08-18 10:26:00] local.INFO: [GAS][计划任务][执行结束----------------------]  
[2022-08-18 10:26:05] local.INFO: [GAS][计划任务][腾讯订单统计][开始]  
[2022-08-18 10:26:05] local.INFO: [GAS][计划任务][腾讯订单统计][统计完成]  
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
最佳答案

file

file

file

都是绑定到events这个成员数组里面去 , CallbackEvent 也是继承的 Scheduling\Event

file

然后返回的是Event实例 因为还需要执行比如(everyFiveMinutes)的绑定

file

运行 php artisan scheduling:run 的时候 artisan 文件里面会实例化这个

$kernel = $app->make(Illuminate\Contracts\Console\Kernel::class);

file

实际执行的是这个

file

然后在这个里面绑定了这个

file

这个里面就会调用

file

绑定注册这个里面的命令

回到这个类

file

file

在这个handle 依赖注入了这个类\Illuminate\Console\Scheduling\Schedule 所以会触发$this->app->singleton(Schedule::class .... 这个单例 就会绑定那些命令

file

这里才是实际执行的

2年前 评论
讨论数量: 3

这个地方只是注册绑定 实际运行的不是在这个地方

2年前 评论

不是多线程,这种测试是不正确的,可以把开始和结束的日志放到闭包里面测试,

2年前 评论

file

file

file

都是绑定到events这个成员数组里面去 , CallbackEvent 也是继承的 Scheduling\Event

file

然后返回的是Event实例 因为还需要执行比如(everyFiveMinutes)的绑定

file

运行 php artisan scheduling:run 的时候 artisan 文件里面会实例化这个

$kernel = $app->make(Illuminate\Contracts\Console\Kernel::class);

file

实际执行的是这个

file

然后在这个里面绑定了这个

file

这个里面就会调用

file

绑定注册这个里面的命令

回到这个类

file

file

在这个handle 依赖注入了这个类\Illuminate\Console\Scheduling\Schedule 所以会触发$this->app->singleton(Schedule::class .... 这个单例 就会绑定那些命令

file

这里才是实际执行的

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!