void cleanUpAndExit() { printf("\nShutting down.\n\n"); providerWaitForThreads(&provider); /* Collect final stats before writing summary. */ providerCollectStats(&provider, RSSL_FALSE, RSSL_FALSE, 0, 0); providerPrintSummaryStats(&provider, stdout); providerPrintSummaryStats(&provider, summaryFile); fclose(summaryFile); providerCleanup(&provider); /* if we did a bind, clean it up */ if (rsslSrvr) { RsslError error; FD_CLR(rsslSrvr->socketId, &readfds); FD_CLR(rsslSrvr->socketId, &exceptfds); rsslCloseServer(rsslSrvr, &error); } providerThreadConfigCleanup(); rsslUninitialize(); xmlCleanupParser(); printf("Exiting.\n"); exit(0); }
void cleanUpAndExit() { providerWaitForThreads(&provider); providerCollectStats(&provider, RSSL_FALSE, RSSL_FALSE, 0, 0); providerPrintSummaryStats(&provider, stdout); providerPrintSummaryStats(&provider, summaryFile); if (testFailed) { fprintf(stdout, "TEST FAILED. An error occurred during this test.\n"); fprintf(summaryFile, "TEST FAILED. An error occurred during this test.\n"); } fclose(summaryFile); providerCleanup(&provider); providerThreadConfigCleanup(); rsslUninitialize(); xmlCleanupParser(); printf("Exiting.\n"); exit(0); }