resumeRecv
বর্ণনা:
void Connection::resumeRecv(void)
বর্তমান সংযোগটি ডেটা পাওয়া অব্যাহত করবে। এই পদ্ধতিটি Connection::pauseRecv এর সাথে কাজ করে, যা আপলোড ট্রাফিক নিয়ন্ত্রণের জন্য খুব উপকারী।
প্যারামিটার
কোন প্যারামিটার নেই
উদাহরণ
use Workerman\Worker;
use Workerman\Timer;
use Workerman\Connection\TcpConnection;
require_once __DIR__ . '/vendor/autoload.php';
$worker = new Worker('websocket://0.0.0.0:8484');
$worker->onConnect = function(TcpConnection $connection)
{
// connection অবজেক্টে একটি ডায়নামিক প্রোপার্টি যুক্ত করুন, যা বর্তমান সংযোগ থেকে কত সংখ্যা অনুরোধ এসেছে তা সংরক্ষণ করবে
$connection->messageCount = 0;
};
$worker->onMessage = function(TcpConnection $connection, $data)
{
// প্রতিটি সংযোগ 100টি অনুরোধ পাওয়ার পর আর ডেটা গ্রহণ করবে না
$limit = 100;
if(++$connection->messageCount > $limit)
{
$connection->pauseRecv();
// 30 সেকেন্ড পরে ডেটা গ্রহণ পুনরায় শুরু হবে
Timer::add(30, function($connection){
$connection->resumeRecv();
}, array($connection), false);
}
};
// ওয়ার্কার চালান
Worker::runAll();
দেখা হবে
void Connection::pauseRecv(void) সংশ্লিষ্ট সংযোগ অবজেক্টকে ডেটা গ্রহণ বন্ধ করতে দেয়