Remove old cfutime code

This commit is contained in:
Matthew Brush 2013-03-04 20:17:23 -08:00
parent 9926984543
commit 23f8df7618
4 changed files with 10 additions and 152 deletions

View File

@ -4,7 +4,7 @@
*/
#include "cfuhash.h"
#include "cfutime.h"
#include "cfutimer.h"
#include <stdio.h>
#include <string.h>
@ -104,20 +104,21 @@ time_it(cfuhash_function_t hf, double *elapsed_time, u_int32_t num_tests) {
size_t used;
size_t num_buckets;
size_t num_entries;
cfutime_t *time = cfutime_new();
cfutimer_t *timer = cfutimer_new();
/* freeze the hash so that it won't shrink while we put in all the data */
cfuhash_set_flag(hash, CFUHASH_FROZEN_UNTIL_GROWS);
cfuhash_set_hash_function(hash, hf);
cfutime_begin(time);
cfutimer_start(timer);
for (i = 0; i < num_tests; i++) {
sprintf(key, "%lu", 15000000 - i);
sprintf(value, "value%lu", i);
cfuhash_put(hash, key, dup_str(value));
}
cfutime_end(time);
*elapsed_time = cfutime_elapsed(time);
cfutimer_stop(timer);
*elapsed_time = cfutimer_elapsed(timer);
cfutimer_free(timer);
used = cfuhash_num_buckets_used(hash);
num_buckets = cfuhash_num_buckets(hash);

View File

@ -1,13 +1,13 @@
lib_LTLIBRARIES = libcfu.la
libcfu_la_SOURCES = cfuhash.c cfutime.c cfutimer.c cfustring.c \
cfulist.c cfuconf.c cfu.c cfuopt.c snprintf.c
libcfu_la_SOURCES = cfuhash.c cfutimer.c cfustring.c cfulist.c \
cfuconf.c cfu.c cfuopt.c snprintf.c
libcfu_la_LIBADD = @PTHREAD_LIBS@ @REALTIME_LIBS@
libcfuincdir = $(includedir)/cfu
libcfuinc_HEADERS = cfu.h cfuhash.h cfutime.h cfutimer.h cfustring.h \
cfulist.h cfuconf.h cfuopt.h
libcfuinc_HEADERS = cfu.h cfuhash.h cfutimer.h cfustring.h cfulist.h \
cfuconf.h cfuopt.h
if USE_PTHREADS
libcfu_la_SOURCES += cfuthread_queue.c

View File

@ -1,79 +0,0 @@
/*
* cfutime.c - This file is part of the libcfu library
*
* Copyright (c) 2005 Don Owens. All rights reserved.
*
* This code is released under the BSD license:
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above
* copyright notice, this list of conditions and the following
* disclaimer in the documentation and/or other materials provided
* with the distribution.
*
* * Neither the name of the author nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include "cfu.h"
#include "cfutime.h"
#include <string.h>
#include <stdlib.h>
#include <assert.h>
#include <sys/time.h>
typedef struct cfutime {
libcfu_type type;
struct timeval begin_tv;
struct timeval end_tv;
} cfutime;
cfutime_t *
cfutime_new(void) {
cfutime_t *time = calloc(1, sizeof(cfutime));
time->type = libcfu_t_time;
return time;
}
void
cfutime_begin(cfutime_t *time) {
gettimeofday(&(time->begin_tv), NULL);
}
void
cfutime_end(cfutime_t *time) {
gettimeofday(&(time->end_tv), NULL);
}
double
cfutime_elapsed(cfutime_t *time) {
return (double)time->end_tv.tv_sec + ((double)time->end_tv.tv_usec)/1000000 -
((double)time->begin_tv.tv_sec + ((double)time->begin_tv.tv_usec)/1000000);
}
void
cfutime_free(cfutime_t *time) {
free(time);
}

View File

@ -1,64 +0,0 @@
/*
* cfutime.h - This file is part of the libcfu library
*
* Copyright (c) 2005 Don Owens. All rights reserved.
*
* This code is released under the BSD license:
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* * Redistributions in binary form must reproduce the above
* copyright notice, this list of conditions and the following
* disclaimer in the documentation and/or other materials provided
* with the distribution.
*
* * Neither the name of the author nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef CFU_TIME_H_
#define CFU_TIME_H_
#include <cfu.h>
CFU_BEGIN_DECLS
typedef struct cfutime cfutime_t;
/* Return a new cfutime structure. */
cfutime_t *cfutime_new(void);
/* Start the timer. */
void cfutime_begin(cfutime_t *time);
/* Stop the timer. */
void cfutime_end(cfutime_t *time);
/* Return the number of seconds elapsed as a double. */
double cfutime_elapsed(cfutime_t *time);
/* Deallocate resources allocated for time. */
void cfutime_free(cfutime_t *time);
CFU_END_DECLS
#endif