Performance problems with HTTPText. This is a test program for the problems.
Dependencies: EthernetNetIf mbed
main.cpp
- Committer:
- shintamainjp
- Date:
- 2010-10-09
- Revision:
- 1:20a89656f772
- Parent:
- 0:fd0a4a9e317c
File content as of revision 1:20a89656f772:
/** * Performance problems with HTTPText. * * Copyright (C) 2010 Shinichiro Nakamura (CuBeatSystems) * http://shinta.main.jp/ */ #include "mbed.h" #include "EthernetNetIf.h" #include "HTTPClient.h" static const int ClientTimeoutMs = 1000; EthernetNetIf netif; Timer timer; void test(int bufsiz); int main(void); /** * Execute the test. * * @param bufsiz Buffer size of a HTTPText. */ void test(int bufsiz) { HTTPClient client; HTTPMap map; HTTPText text("text/html", bufsiz); client.setTimeout(ClientTimeoutMs); int sizelist[10] = { 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096 }; printf("(Buffer size of a HTTPText : %d)\n", bufsiz); printf("+---------+--------+------+--------+\n"); printf("|File size|Time[ms]|Result|Response|\n"); printf("+---------+--------+------+--------+\n"); for (int i = 0; i < sizeof(sizelist) / sizeof(sizelist[0]); i++) { char url[256]; sprintf(url, "http://mbed.org/media/uploads/shintamainjp/textfile_%dbytes.txt", sizelist[i]); timer.stop(); timer.reset(); timer.start(); HTTPResult r = client.get(url, &text); timer.stop(); printf("|%9d|%8d|%6d|%8d|\n", sizelist[i], timer.read_ms(), (int)r, client.getHTTPResponseCode()); } printf("+---------+--------+------+--------+\n"); } /** * Entry point. */ int main(void) { int bufsizlist[10] = { 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096 }; EthernetErr ethErr = netif.setup(); if (ethErr) { error("Network setup failed.\n"); } for (int i = 0; i < sizeof(bufsizlist) / sizeof(bufsizlist[0]); i++) { printf("\n"); test(bufsizlist[i]); } }