我在thread1中以这种方式编写代码,
public void run() {
while (continueToProcess.get()) {
if (System.currentTimeMillis() > nextFlushTime) {
try {
String json = (ACTIVE.equals(activeTab)) ? bundleS2JsonStreams() : ((ACTIVE1.equals(activeTab)) ? bundleS4JsonStreams()
: bundleS1JsonStreams());
if (json != null) {
MemcachedInterface.set((ACTIVE.equals(activeTab)) ? memcacheS2Key : ((ACTIVE1.equals(activeTab)) ? memcacheS4Key : memcacheS1Key),json);
}
} catch (Throwable e) {
logger.error("Error flushing to memcached, cust: " + customerId, e);
}
lastBundleTime = System.currentTimeMillis();
nextFlushTime = lastBundleTime + flushInterval;
}
}
tempThread.setRun(false);
try {
tempThread.interrupt();
} catch (Exception e) {
}
}
1) 这里需要什么 MemcachedInterface 来放置带有 memcacheS1Key 之类的键的 json 数据?我的意思是为什么在这里使用 MemcachedInterface?
2)然后从第一个线程1调用第二个线程tempThread ...并将其运行方法设置为false ...
tempThread.setRun(false);
acatullay 是做什么的?
3)如果我们打电话tempThread.interrupt();
在第二个线程上,它的执行是否会停止,只有当这个线程 1 再次启动时才会再次启动?