Frage

Ich versuche, ein Java -Applet zu streiten, und Strace scheint nicht zu funktionieren. Ich rufe die folgende Funktion auf.

public static void testSTrace(){
    long c = 0;
    for (int i = 0; i < 1000; i++){
        long start = System.nanoTime();

        try{Thread.sleep(0, 100);}catch(Exception e){/*cry*/}

        long stop = System.nanoTime();

        log.info("start : " +start+" stop : "+stop);
    }
}

Ich bekomme die folgende Ausgabe von Strace kurz bevor die obige Nachricht aufgerufen wird, und dann nichts von Strace:

clone(child_stack=0xb7c9f4c4,
flags=CLONE_VM|CLONE_FS|CLONE_FILES|CLONE_SIGHAND|CLONE_THREAD|CLONE_SYSVSEM|
CLONE_SETTLS|CLONE_PARENT_SETTID|CLONE_CHILD_CLEARTID|CLONE_DETACHED,
parent_tidptr=0xb7c9fbf8, {entry_number:6, base_addr:0xb7c9fbb0,
limit:1048575, seg_32bit:1,
contents:0, read_exec_only:0,
limit_in_pages:1, seg_not_present:0, useable:1}, child_tidptr=0xb7c9fbf8) = 8351 futex(0xb7c9fbf8, FUTEX_WAIT, 8351, NULL

Sobald ich von der Methode angefangen habe, habe ich nichts mehr von Strace. Ich bin ziemlich neu in Strace. Irgendwelche Hinweise darauf, was los ist? Können Applets festgehalten werden?

War es hilfreich?

Lösung

Sie sind wahrscheinlich nur einen einzelnen Faden. Laufen Sie Strace mit dem -f Flagge.

Andere Tipps

Drei Prost für Mannseiten, ich möchte die Folgegaber -Flagge, -f und -f

-f -- follow forks, -ff -- with output into separate files
-F -- attempt to follow vforks, -h -- print help message

strace -fF /bin/appletviewer test.html 

Jetzt bekomme ich:

[pid  8401] gettimeofday({1248700317, 550296}, NULL) = 0
[pid  8401] gettimeofday({1248700317, 550401}, NULL) = 0
[pid  8401] gettimeofday({1248700317, 550500}, NULL) = 0
[pid  8401] gettimeofday({1248700317, 550626}, NULL) = 0
[pid  8401] gettimeofday({1248700317, 550883}, NULL) = 0
[pid  8401] gettimeofday({1248700317, 550993}, NULL) = 0
[pid  8401] gettimeofday({1248700317, 551093}, NULL) = 0
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top