zookeeper源码解析--会话管理--LocalSessionTracker

zookeeper源码解析--会话管理--LocalSessionTracker,第1张

zookeeper源码解析--会话管理--LocalSessionTracker
public LocalSessionTracker(
	// 会话超期追踪
	SessionExpirer expirer,
	// 会话id--超时时间 
	ConcurrentMap sessionsWithTimeouts, 
	int tickTime, long id, ZooKeeperServerListener listener) 
{
    super(expirer, sessionsWithTimeouts, tickTime, id, listener);
}

// 追踪
// sessionsById中存在即为被追踪的
public boolean isLocalSession(long sessionId) 
{
    return isTrackingSession(sessionId);
}

// 全局--返回false
public boolean isGlobalSession(long sessionId) 
{
    return false;
}

// 创建会话
public long createSession(int sessionTimeout) 
{
	// 创建会话+提交会话
    long sessionId = super.createSession(sessionTimeout);
    commitSession(sessionId, sessionTimeout);
    return sessionId;
}

// 本地会话
public Set localSessions() 
{
	// sessionsWithTimeout是在提交 *** 作时,形成的容器
    return sessionsWithTimeout.keySet();
}

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5716713.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-18
下一篇 2022-12-18

发表评论

登录后才能评论

评论列表(0条)

保存