Skip to content

Commit fc2c445

Browse files
committed
Improves handling multiple versions of openswoole
1 parent 8dbe544 commit fc2c445

File tree

2 files changed

+24
-3
lines changed

2 files changed

+24
-3
lines changed

src/Swoole/SwooleExtension.php

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,10 +53,14 @@ public function setProcessName(string $appName, string $processName): void
5353
*/
5454
public function cpuCount(): int
5555
{
56-
try {
56+
if (function_exists('swoole_cpu_num')) {
5757
return swoole_cpu_num();
58-
} catch (\Throwable $th) {
59-
return extension_loaded('openswoole') ? \OpenSwoole\Util::getCPUNum() : 1;
6058
}
59+
60+
if (class_exists(\OpenSwoole\Util::class) && method_exists(\OpenSwoole\Util::class, 'getCPUNum')) {
61+
return \OpenSwoole\Util::getCPUNum();
62+
}
63+
64+
return 1;
6165
}
6266
}

tests/SwooleExtensionTest.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?php
2+
3+
namespace Laravel\Octane\Tests;
4+
5+
use Laravel\Octane\Swoole\SwooleExtension;
6+
7+
class SwooleExtensionTest extends TestCase
8+
{
9+
public function test_cpu_count()
10+
{
11+
$extension = new SwooleExtension();
12+
13+
$cpuCount = $extension->cpuCount();
14+
15+
$this->assertTrue($cpuCount > 0);
16+
}
17+
}

0 commit comments

Comments
 (0)