Проблема с памятью ( Createthread?)

Тема в разделе "Borland C++ Builder & Kylix", создана пользователем xykapec, 31 янв 2008.

Статус темы:
Закрыта.
  1. xykapec

    xykapec Гость

    Всем доброго времени суток.

    В общем, у меня есть програмка написаная так чтобы можно было компилировать и в windows и в linux.

    Под windows програмка работает нормально, но вот в linux потр*цензура*ет слишком много памяти.
    Програмка работает через потоки. Как я понял именно поток занимает слишком много памяти.
    Наприпер при 22 потоках она забивает 220мб.
    В windows при 140-ка потоках програмка знаимает 40мб максимум.

    Вот кусок кода ответсвенный за открытие нового потка:

    Код (Text):
    #ifndef WINDA
    void newthread(void* func, void* p)
    {
    pthread_t   ThrId;
    pthread_attr_t  tattr;

    pthread_attr_init(&tattr);
    pthread_attr_setdetachstate(&tattr, PTHREAD_CREATE_DETACHED);
    pthread_create(&ThrId, &tattr, func, p);
    pthread_attr_destroy(&tattr);
    //pthread_detach(ThrId);
    }
    #else
    void newthread(void* func, void* p)
    {    
    CloseHandle( CreateThread( NULL, 0, (unsigned long (_stdcall*)())func, p, 0, NULL) );
    }
    #endif
    Я не очень соображаю в программированнии, поэтому прошу Вашей помощи.
    Есть 20wmz в качестве вознаграждения.


    Большое Спасибо!
     
  2. xykapec

    xykapec Гость

    :blink:
    Проблема решена.
     
Загрузка...
Похожие Темы - Проблема памятью Createthread
  1. c0de3r
    Ответов:
    5
    Просмотров:
    126
  2. DobermannTT
    Ответов:
    10
    Просмотров:
    135
  3. SoulPaladin
    Ответов:
    4
    Просмотров:
    131
  4. Artael
    Ответов:
    1
    Просмотров:
    110
  5. ENSLER
    Ответов:
    0
    Просмотров:
    102
Статус темы:
Закрыта.

Поделиться этой страницей