Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

トップページ > プログラム > 2016年05月13日 > cduHyZK8

書き込み順位&時間帯一覧

4 位/188 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000002130000006



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん
C言語なら俺に聞け! Part 135©2ch.net

書き込みレス一覧

C言語なら俺に聞け! Part 135©2ch.net
47 :デフォルトの名無しさん[sage]:2016/05/13(金) 15:35:57.01 ID:cduHyZK8
>>45
http://i.imgur.com/THfSwDv.jpg
問題のexecはstudentmulです
一度にmallocしてるサイズはsizeof
struct game_info{
MYSQL *sql;
pthread_t thread;
long gameid;
char isDone;
};

struct id_chain{
long id;
struct idchain *left;
struct idchain *right;
};
なのでだいたい16~24byteくらいかなぁとおもいまふ
小さいmallocを頻繁にするのは良くないっていうのをmallocのソース書いた人が言ってるのですがそれはCPU使用量の話なんですよ
なんどもmalloc&freeするんじゃなくて使い終わったものを再利用するようなコードにしたほうがいいですかね?
C言語なら俺に聞け! Part 135©2ch.net
48 :デフォルトの名無しさん[sage]:2016/05/13(金) 15:38:00.16 ID:cduHyZK8
ちなみにgetpagesizeは4096でした
C言語なら俺に聞け! Part 135©2ch.net
53 :デフォルトの名無しさん[sage]:2016/05/13(金) 16:44:30.82 ID:cduHyZK8
http://i.imgur.com/zmzrQVL.jpg
psコマンドの結果はこうなりました


http://i.imgur.com/LfSA3Rm.jpg
valgrindってツールでチェックしてみたらこんな出力がされたのですが関係ありますかねぇ?
pthread_createの中で使われたソースが解放されてないと出ているのですが。
ちなみにheadmanagerって関数の中のfree忘れがあるっていう出力は実際にはメモリリークじゃないので気にしないでくだしあ
C言語なら俺に聞け! Part 135©2ch.net
54 :デフォルトの名無しさん[sage]:2016/05/13(金) 17:08:04.12 ID:cduHyZK8
あっ
申し訳ない
言っていなかったがこのアプリケーション500個くらいのスレッドが同時進行しているというだけであってスレッドは20秒くらいで死んでまた生まれるっていう感じの内容
これって関係ある?
C言語なら俺に聞け! Part 135©2ch.net
57 :デフォルトの名無しさん[sage]:2016/05/13(金) 17:16:18.43 ID:cduHyZK8
>>55
...
本当に申し訳ない。
よく見たらスレッドごとにsqlのオブジェクト作ってる。
もしかしてこれが原因?
そういうもんなんだと思ってた
C言語なら俺に聞け! Part 135©2ch.net
60 :デフォルトの名無しさん[sage]:2016/05/13(金) 17:28:19.19 ID:cduHyZK8
オブジェクト消してはいるのは確かだなあvalgrindがもし消していなかったら検知する筈だし
ちなみに作られたスレッドはオセロやりながらそのゲームの記録をDBに書いてるだけ
そのスレッド達はmalloc使ってない


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。