diff options
author | kwaclaw <kwaclaw> | 2006-04-07 20:25:43 +0000 |
---|---|---|
committer | kwaclaw <kwaclaw> | 2006-04-07 20:25:43 +0000 |
commit | d0d1f5d79f7b6802d40a81a7460c081e88c850ed (patch) | |
tree | a4f631ad4097c9594e3d095c7b14ad761f6eb668 | |
parent | 6d06f9ea100596564279d46e67a7cd8c8ab381e7 (diff) | |
download | libexpat-d0d1f5d79f7b6802d40a81a7460c081e88c850ed.tar.gz |
Modified code to use XML_ParserReset() instead of creating a new
parser instance on each iteration of the main loop.
-rw-r--r-- | tests/benchmark/benchmark.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/tests/benchmark/benchmark.c b/tests/benchmark/benchmark.c index 86266a0..30a5284 100644 --- a/tests/benchmark/benchmark.c +++ b/tests/benchmark/benchmark.c @@ -72,15 +72,16 @@ int main (int argc, char *argv[]) fileSize = fread (XMLBuf, sizeof (char), fileAttr.st_size, fd); fclose (fd); + if (ns) + parser = XML_ParserCreateNS(NULL, '!'); + else + parser = XML_ParserCreate(NULL); + i = 0; XMLBufEnd = XMLBuf + fileSize; while (i < nrOfLoops) { XMLBufPtr = XMLBuf; isFinal = 0; - if (ns) - parser = XML_ParserCreateNS(NULL, '!'); - else - parser = XML_ParserCreate(NULL); tstart = clock(); do { int parseBufferSize = XMLBufEnd - XMLBufPtr; @@ -102,10 +103,11 @@ int main (int argc, char *argv[]) } while (!isFinal); tend = clock(); cpuTime += ((double) (tend - tstart)) / CLOCKS_PER_SEC; - XML_ParserFree (parser); + XML_ParserReset(parser, NULL); i++; } + XML_ParserFree (parser); free (XMLBuf); printf ("%d loops, with buffer size %d. Average time per loop: %f\n", |