- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 easy way to handle non-block tcp socket
static result_t __non_block_connect_process(void *sock){ tcp_sock_t *tcp_sock = (tcp_sock_t *)sock; result_t rc = E_OK; struct sockaddr_in addr; LOGT(C_TCP_THREAD_TAG, "Enter")
2017-08-18 17:12:36 188
原创 CAS锁与MUTEX锁性能测试
C源码:#include #include #include #include #define lock(lkp) do{ \ while(!__sync_bool_compare_and_swap(lkp, 0, 1)){ \ usleep(1000); \ } \}while(0)#define unlock(lkp) do{
2017-08-13 20:03:11 1021 1
原创 CAS锁c源码实现
#define lock(lkp) do{ \ while(!__sync_bool_compare_and_swap(lkp, 0, 1)) \ sched_yield(); \} while(0)#define unlock(lkp) do{ \ *(lkp) = 0; \} while(0)
2017-08-13 19:07:49 1218
原创 ring buf
#ifndef __RING_BUF_H__#define __RING_BUF_H__#include "stdint.h"void* ring_slab_new(void *slab_addr, uint32_t slab_length, size_t item_size);void ring_slab_del(void *slab);void* ring_slab_put(
2017-08-13 11:16:40 333
转载 一个内存空洞问题的定位
转载于:http://v2ex.io/2015/06/18/memory-hole-and-memory-leak-thought/背景:最近遇到一个问题,现象是主备反复倒换(产品的一个测试场景,对应到进程内多个线程反复起停),进程内存占用持续上涨直到系统OOM。从操作步骤及现象来看,第一感觉是有内存泄漏,但内存相关问题定位一般都比较棘手。可能由于近期代码做了比较大变动(日志优
2017-08-03 10:15:42 3225 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人