2012-11-07 13 views
8

मैं निम्नलिखित सेटअप के साथ valgrind चला रहा हूं: valgrind --tool=memcheck --tool=callgrind --num-callers=20 --track-fds=yes --error-exitcode=1 CMD। विशेष रूप से, --track-fds=yes वांछित के रूप में काम करते हैं, लेकिन प्रत्येक रन एफडीएस 0,1,2 के कारण विफल रहता है जो खुले होने वाले हैं। हालांकि, मैं --track-fds ड्रॉप नहीं करना चाहता, क्योंकि यह निश्चित रूप से सार्थक जानकारी देता है। तो, 0,1,2 को छोड़कर एफडीएस को ट्रैक करने के लिए एक वालग विकल्प/विधि है?valgrind `--track-fds = yes` fds के बिना 0,1,2

==5872== FILE DESCRIPTORS: 3 open at exit. 
==5872== Open file descriptor 2: 
==5872== <inherited from parent> 
==5872== 
==5872== Open file descriptor 1: 
==5872== <inherited from parent> 
==5872== 
==5872== Open file descriptor 0: /dev/pts/0 
==5872== <inherited from parent> 
==5872== 
==5872== 
==5872== Events : Ir 
==5872== Collected : 3081079256 
==5872== 
==5872== I refs:  3,081,079,256 

उत्तर

10

उन stdin, stdout और stderr हैं। आम तौर पर आप इन्हें अनदेखा कर सकते हैं, लेकिन यदि आप वास्तव में भयानक होना चाहते हैं:

fclose (stdin);
fclose (stdout);
fclose (stderr);

संबंधित मुद्दे