/* need to initialize the database here if it's not already */
printf("creating %d threads\n", THREAD_COUNT); for (i = 0; i < THREAD_COUNT; i++) {
threadnumber[i] = i;
thread[i] = PR_CreateThread(PR_USER_THREAD, create_key_loop,
&threadnumber[i], PR_PRIORITY_NORMAL,
PR_GLOBAL_THREAD,
PR_JOINABLE_THREAD, STACK_SIZE); if (thread[i] == NULL) {
ERROR++;
fprintf(stderr, "PR_CreateThread failed iteration %d, %s\n", i,
PORT_ErrorToString(PORT_GetError()));
}
}
printf("waiting on %d threads\n", THREAD_COUNT); for (i = 0; i < THREAD_COUNT; i++) { if (thread[i] == NULL) { continue;
}
status = PR_JoinThread(thread[i]); if (status != PR_SUCCESS) {
ERROR++;
fprintf(stderr, "PR_CreateThread filed iteration %d, %s\n", i,
PORT_ErrorToString(PORT_GetError()));
}
} if (NSS_Shutdown() != SECSuccess) {
ERROR++;
fprintf(stderr, "NSS_Shutdown failed: %s\n",
PORT_ErrorToString(PORT_GetError()));
}
printf("%d failures and %d errors found\n", FAILED, ERROR); /* clean up */ if (FAILED) { exit(1);
} if (ERROR) { exit(2);
} exit(0);
}
Messung V0.5
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.1Bemerkung:
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.