ホームページ > バックエンド開発 > C++ > C言語において、プロセス内で作成できるスレッドの最大数

C言語において、プロセス内で作成できるスレッドの最大数

王林
リリース: 2023-09-17 21:49:03
転載
1333 人が閲覧しました

C言語において、プロセス内で作成できるスレッドの最大数

与えられたタスクは、プロセス内で作成できるスレッドの最大数を見つけることです

C.

スレッドは、スケジューラによって独立して管理できる軽量のプロセスです。一つのせいで スレッドはプロセスのコンポーネントであるため、複数のスレッドを関連付けることができます

プロセスと比較して、スレッドは処理が軽いだけでなく、コンテキストを切り替えるのに必要な時間も短くなります。

スレッドはプロセスよりも必要なリソースが少なく、ピアとメモリも共有します。

糸。すべてのユーザーレベルのピアスレッドは、オペレーティングシステムによって単一のタスクとして扱われます。少ない 作成と終了には時間がかかります。

出力はプログラムを実行するたびに常に異なります。

以下のプログラムで使用するメソッドは次のとおりです

  • 関数 void* create(void *) を作成し、デモ用なので空のままにします。

  • main() 関数で 2 つの int 型変数 max = 0 と ret = 0 を初期化します。 最大スレッド数と戻り値を別々に保存します。

  • pthread_t 型の変数 "th" を宣言します。

  • 条件 ret == 0 で while ループを実行し、ret = pthread_create (&th, NULL、作成、NULL);

  • ループ内で最大回数繰り返します。

  • #最大値をループの外で出力します。

    >

#include<pthread.h>
#include<stdio.h>
/*Leave the function empty as it
only demonstrates work of thread*/
void *create ( void *){
}
//main function
int main(){
   int max = 0, ret = 0;
   pthread_t th;
   //Iterate until 0 is returned
   while (ret == 0){
      ret = pthread_create (&th, NULL, create, NULL);
      max++;
   }
   printf(" %d ", max);
}
ログイン後にコピー

出力

5741
ログイン後にコピー

以上がC言語において、プロセス内で作成できるスレッドの最大数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート