我使用调试器来跟踪问题。我对代码是如何执行的感到非常困惑。请参阅附图。本来189行执行完后,就跳过了194行、196行等后面的行,跳到了198行。我怀疑189行可能有异常,所以用try-catch包裹起来。不过189行执行完后,还是跳到了198行。以下是原始代码(https://github.com/de-luxe/burstcoin-jminer/blob/master/src/main/java/burstcoin/jminer/core/round/Round.java),没有 try-catch (第 188 行 - 第 195 行是利息)。调试器在配置“useOpenCl=false”下运行。如果“useOpenCl=true”,则程序可以正常运行,即第189行之后的行(原代码中的第188行)将在支持OpenCl的机器上正常执行。显然,我试图在不使用 OpenCl 的情况下部署它,但由于这个问题,我无法做到这一点。我从事 Java 编程多年,这对我来说真的很有趣,代码如何通过跳过一些行来执行而不在任何地方抛出异常。 // start reader int scoopNumber = calcScoopNumber(event.getBlockNumber(), event.getGenerationSignature()); reader.read(previousBlockNumber, blockNumber, generationSignature, scoopNumber, lastBestCommittedDeadline, networkQuality); // ui event publisher.publishEvent(new RoundStartedEvent(restart, blockNumber, scoopNumber, plots.getSize(), targetDeadline, baseTarget, generationSignature)); network.checkLastWinner(blockNumber);
添加回答
举报
0/150
提交
取消