C のスレッドが使用するメモリを減らすにはどうすればよいですか? スレッドは約 8 ~ 10 MB のメモリを使用しますが、このメモリを削減する方法はありますか?
2 に答える
6
はい、スレッドスタックのサイズを設定できます。
pthread_attr_t attribute;
pthread_t thread;
pthread_attr_init(&attribute);
pthread_attr_setstacksize(&attribute,size); // size may be defined by u as 1024,2048,etc
pthread_create(&thread,&attribute,fun,0);
................................................................
void *fun(void *arg)
{
....
}
于 2013-04-25T11:03:07.150 に答える
2
すでに回答したように、アプリケーションで pthread 属性を使用できます。
ただし、ulimit コマンドを使用して、現在のシェルで起動されたアプリケーションに制限を設定することもできます。
ulimit -s
: 現在の制限を kiB で表示しますulimit -s 1024
: スタックを 1 MiB に制限します
于 2013-04-25T14:08:47.770 に答える