func newPool(servers []string, initSize, maxSize int, encoding EncodingType) (self *memcachedPool, err error) { config := poolConfig(servers, initSize, maxSize) cs_config := C.CString(config) defer C.free(unsafe.Pointer(cs_config)) self = new(memcachedPool) self.pool = C.memcached_pool(cs_config, C.size_t(len(config))) if self.pool == nil { err = self.checkError( C.libmemcached_check_configuration( cs_config, C.size_t(len(config)), nil, 0)) return } self.encoding = encoding return }
func newMemcached(servers []string, encoding EncodingType) (self *memcached, err error) { config := clientConfig(servers) cs_config, config_len := cString(config) defer C.free(unsafe.Pointer(cs_config)) self = new(memcached) self.mc = C.memcached(cs_config, config_len) if self.mc == nil { err = self.checkError( C.libmemcached_check_configuration( cs_config, config_len, nil, 0)) return } self.encoding = encoding return }