Ejemplo n.º 1
0
void
test_split (void) {
	char str0[] = "\x01";
	char str1[] = "\x01\x01x\x01y\x01z\x01xy\x01yz";
	char str2[] = "buffer one\n\x01\x02\nend buffer\n";
	char str3[] = "buffer two\n\x01\x02\nend buffer\n";

	deque_t *split = (deque_t *)NULL;

	cbuffer_t *buf1 = (cbuffer_t *)NULL;
	cbuffer_t *buf2 = (cbuffer_t *)NULL;
	cbuffer_t *buf3 = (cbuffer_t *)NULL;

	buf1 = cbuf_new ();
	buf2 = cbuf_new ();
	buf3 = cbuf_new ();

	cbuf_import (buf1, str1, strlen (str1));
	cbuf_import (buf2, str2, strlen (str2));
	cbuf_import (buf3, str3, strlen (str3));

	split = cbuf_split (buf1, (void *)str0, 1);
	printf ("test_split(): len = %d\n", deque_length (split));

	deque_push (split, buf2);
	printf ("test_split(): len = %d\n", deque_length (split));

	deque_push (split, buf3);
	printf ("test_split(): len = %d\n", deque_length (split));

	cbuf_delete (buf1);
	deque_delete (split, cbuf_delete_callback);
}
Ejemplo n.º 2
0
void
pth_pool_delete (pth_pool_t *p) {
	if (p != (pth_pool_t *)NULL) {
		if (p->threads != (deque_t *)NULL) {
			deque_delete (p->threads, pth_pool_delete_callback);
		}
		xfree (p);
		p = (pth_pool_t *)NULL;
	}
}
Ejemplo n.º 3
0
int
test_pt (void *p) {
	extern deque_t *pool;
	extern int exit_success;
	signal (SIGHUP, test_signal_handler);
	while (1 && exit_success == 0) {
		sleep (1);
		printf ("pid: %d (%p)\n", getpid (), p);
	}
	deque_delete (pool, deque_delete_cb);
	return 1;
}
Ejemplo n.º 4
0
int
main (void) {
	extern deque_t *pool;
	extern int exit_success;
	exit_success = 0;

	pool = ppm_pool_create (3, (deque_t *)NULL, test_pt);
	sleep (20);
	ppm_kill_pool (pool, SIGHUP);
	deque_delete (pool, deque_delete_cb);
	return 0;
}
Ejemplo n.º 5
0
int
caf_dsm_delete (caf_dsm_t *r) {
	if (r != (caf_dsm_t *)NULL) {
		if (r->m_state != (deque_t *)NULL) {
			if ((deque_delete (r->m_state, caf_dsm_delete_callback))
				== CAF_OK) {
				xfree (r);
				return CAF_OK;
			}
		} else {
			xfree (r);
			r = (caf_dsm_t *)NULL;
		}
	}
	return CAF_ERROR;
}
Ejemplo n.º 6
0
int
main(int argc, char* argv[])
{
    deque_t q = deque_create();

    deque_test_enqueue_dequeue(q,
                               deque_push_front, deque_pop_front, 34352, 0.10234);
    deque_test_enqueue_dequeue(q,
                               deque_push_front, deque_pop_rear, 454523, 1.3022);
    deque_test_enqueue_dequeue(q,
                               deque_push_rear, deque_pop_front, 78797, 0.17672);
    deque_test_enqueue_dequeue(q,
                               deque_push_rear, deque_pop_rear, 56239, 1.7987);

    deque_delete(&q);
    return 0;
}