runAll

void Worker::runAll(void)

সব Worker ইনস্ট্যান্স চালান।

অর্থাৎ:

Worker::runAll() চালানোর পর এটি স্থায়ীভাবে ব্লক করবে, অর্থাৎ Worker::runAll() এর পরের কোডটি এক্সিকিউট হবে না। সব Worker ইনস্ট্যান্স সৃষ্টি Worker::runAll() এর আগে করতে হবে।

প্যারামিটার

কোন প্যারামিটার নেই

রিটার্ন ভ্যালু

কোন রিটার্ন নেই

উদাহরণ একাধিক Worker ইনস্ট্যান্স পরিচালনা

start.php

<?php
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';

$http_worker = new Worker("http://0.0.0.0:2345");
$http_worker->onMessage = function(TcpConnection $connection, $data)
{
    $connection->send('hello http');
};

$ws_worker = new Worker('websocket://0.0.0.0:4567');
$ws_worker->onMessage = function(TcpConnection $connection, $data)
{
    $connection->send('hello websocket');
};

// সব Worker ইনস্ট্যান্স চালান
Worker::runAll();

অর্থাৎ:

windows সংস্করণের workerman একটি ফাইলে একাধিক Worker ইনস্ট্যান্স তৈরি সমর্থন করে না।
উপরের উদাহরণটি windows সংস্করণের workerman এ চলবে না।

windows সংস্করণের workerman কে একাধিক Worker ইনস্ট্যান্সের প্রাথমিককরণ আলাদা ফাইলে করতে হবে, নিচের মতো

start_http.php

<?php
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';

$http_worker = new Worker("http://0.0.0.0:2345");
$http_worker->onMessage = function(TcpConnection $connection, $data)
{
    $connection->send('hello http');
};

// সব Worker ইনস্ট্যান্স চালান(এখানে মাত্র একটি ইনস্ট্যান্স আছে)
Worker::runAll();

start_websocket.php

<?php
use Workerman\Worker;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';

$ws_worker = new Worker('websocket://0.0.0.0:4567');
$ws_worker->onMessage = function(TcpConnection $connection, $data)
{
    $connection->send('hello websocket');
};

// সব Worker ইনস্ট্যান্স চালান(এখানে মাত্র একটি ইনস্ট্যান্স আছে)
Worker::runAll();