linux修改最大线程数却未生效的原因

可能是没有重新对新文件进行编译

更改一个进程所能创建的最大进程数之前

更改一个进程所能创建的最大进程数之后 

 

测试代码 

#include <iostream>
#include <unistd.h>
#include <sys/wait.h>
#include <string.h>
#include <stdio.h>
#include <pthread.h>
#include <stdlib.h>

using namespace std;

void *func(void *argv)
{
    // cout << "i am a new pthread, my tid is" << pthread_self() << endl;
    while (1)
    {
    }
}

int main()
{
    cout << "i am main pthread" << endl
         << "my tid is " << pthread_self() << endl;
    // pthread_t 不能用数组吗,应该是可以的,但是我此前实验代码有错误
    // pthread_t tid;
    int count = 0; // 计算创建了多少个线程
    for (int i = 0; i < 100000000000000000000; i++)
    {
        int ret = 0;
        pthread_t *pt = new pthread_t;
        count++;
        if (count % 100 == 0)
        {
            cout << count << endl;
        }
        // cout << "i am main pthread" << endl
        //      << "my tid is " << pthread_self() << endl;//

        // sleep(1);
        if (int ret = pthread_create(pt, NULL, func, NULL) != 0)
        {
            fprintf(stderr, "pthread_create : %s\n", strerror(ret));
            exit(EXIT_FAILURE);
        }
    }

    int ret = 3;
    fprintf(stderr, "pthread_create : %s\n", strerror(ret));

    for (;;)
    {
        cout << "i am main pthread" << endl;
        sleep(1);
    }
}

文章来源地址https://www.uudwc.com/A/zkE95/

原文地址:https://blog.csdn.net/m0_74234485/article/details/132794924

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年09月15日 02:54
下一篇 2023年09月15日 02:54