<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.pcntl.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ja',
  ),
  'this' => 
  array (
    0 => 'function.pcntl-setqos-class.php',
    1 => 'pcntl_setqos_class',
    2 => '現在のスレッドの QoS クラスを設定する',
  ),
  'up' => 
  array (
    0 => 'ref.pcntl.php',
    1 => 'PCNTL 関数',
  ),
  'prev' => 
  array (
    0 => 'function.pcntl-setpriority.php',
    1 => 'pcntl_setpriority',
  ),
  'next' => 
  array (
    0 => 'function.pcntl-signal.php',
    1 => 'pcntl_signal',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ja',
    'path' => 'reference/pcntl/functions/pcntl_setqos_class.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.pcntl-setqos-class" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">pcntl_setqos_class</h1>
  <p class="verinfo">(PHP 8 &gt;= 8.4.0)</p><p class="refpurpose"><span class="refname">pcntl_setqos_class</span> &mdash; <span class="dc-title">現在のスレッドの QoS クラスを設定する</span></p>

 </div>

 <div class="refsect1 description" id="refsect1-function.pcntl-setqos-class-description">
  <h3 class="title">説明</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>pcntl_setqos_class</strong></span>(<span class="methodparam"><span class="type"><a href="enum.pcntl-qosclass.php" class="type Pcntl\QosClass">Pcntl\QosClass</a></span> <code class="parameter">$qos_class</code><span class="initializer"> = <strong><code>Pcntl\QosClass::Default</code></strong></span></span>): <span class="type"><a href="language.types.void.php" class="type void">void</a></span></div>

  <p class="simpara">
   QoS クラスを設定します。
  </p>
 </div>


 <div class="refsect1 parameters" id="refsect1-function.pcntl-setqos-class-parameters">
  <h3 class="title">パラメータ</h3>
  <dl>
   
    <dt><code class="parameter">qos_class</code></dt>
    <dd>
     <p class="para">
      現在のスレッドに割り当てる Quality of Service クラス。
      オペレーティングシステムは、これを CPU 時間の割り当て、
      I/O 優先度、電力消費をスケジューリングする際のヒントとして使用し、
      上位のクラスは下位のクラスに割り込んで実行されます。
      利用可能なケースについては、<span class="enumname"><a href="enum.pcntl-qosclass.php" class="enumname">Pcntl\QosClass</a></span>
      を参照してください。
     </p>
     <p class="para">
      <dl>
       
        <dt><strong><code>Pcntl\QosClass::UserInteractive</code></strong></dt>
        <dd>
         <span class="simpara">
          最も高い優先度です。ユーザーインターフェイスを直接駆動する処理向けで、
          イベント処理や描画など、体感的な遅延を避けるために
          ほぼ瞬時に完了する必要があるものを想定しています。
         </span>
        </dd>
       
       
        <dt><strong><code>Pcntl\QosClass::UserInitiated</code></strong></dt>
        <dd>
         <span class="simpara">
          高い優先度で、<strong><code>UserInteractive</code></strong> のすぐ下です。
          ユーザーが明示的に開始し、結果を待っている処理向けで、
          数秒以内に完了することが期待されるものを想定しています。
         </span>
        </dd>
       
       
        <dt><strong><code>Pcntl\QosClass::Default</code></strong></dt>
        <dd>
         <span class="simpara">
          標準の優先度で、より具体的なクラスが該当しない場合に使用します。
          より優先度の高い処理の後に実行されますが、
          <strong><code>Utility</code></strong> や <strong><code>Background</code></strong>
          よりは先に実行されます。
         </span>
        </dd>
       
       
        <dt><strong><code>Pcntl\QosClass::Utility</code></strong></dt>
        <dd>
         <span class="simpara">
          低めの優先度です。ダウンロード、インポート、
          一括計算など、ユーザーは認識しているものの、
          結果を待ってはいない長時間の処理向けです。
          省電力なスケジューリングが行われます。
         </span>
        </dd>
       
       
        <dt><strong><code>Pcntl\QosClass::Background</code></strong></dt>
        <dd>
         <span class="simpara">
          最も低い優先度です。プリフェッチ、インデックス作成、
          メンテナンスなど、ユーザーが認識していない処理向けです。
          電力効率を強く重視して最適化されており、
          システムが高負荷の場合は実行が後回しにされる可能性があります。
         </span>
        </dd>
       
      </dl>
     </p>
    </dd>
   
  </dl>
  <blockquote class="note"><p><strong class="note">注意</strong>: 
   <span class="simpara">この関数は、Apple のプラットフォームでのみ利用可能です。</span>
  </p></blockquote>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.pcntl-setqos-class-returnvalues">
  <h3 class="title">戻り値</h3>
  <p class="simpara">
   値を返しません。
  </p>
 </div>


 <div class="refsect1 errors" id="refsect1-function.pcntl-setqos-class-errors">
  <h3 class="title">エラー / 例外</h3>
  <p class="simpara">
   内部の <code class="literal">pthread_set_qos_class_self_np()</code> の呼び出しが失敗した場合、
   <span class="classname"><a href="class.error.php" class="classname">Error</a></span> をスローします。
  </p>
 </div>


 <div class="refsect1 seealso" id="refsect1-function.pcntl-setqos-class-seealso">
  <h3 class="title">参考</h3>
  <ul class="simplelist">
   <li><span class="function"><a href="function.pcntl-getqos-class.php" class="function" rel="rdfs-seeAlso">pcntl_getqos_class()</a> - 現在のスレッドの QoS クラスを取得する</span></li>
   <li><span class="enumname"><a href="enum.pcntl-qosclass.php" class="enumname">Pcntl\QosClass</a></span></li>
  </ul>
 </div>


</div><?php manual_footer($setup); ?>