@Override protected void doRun() { File file; while ((file = filesToSave.poll()) != null || saveCount.get() < FILES_COUNT) { if (file != null) { byte data[] = file.generateData(); dataStore.storeData(file.getSessionId(), file.getId(), data); if (saveCount.get() % READ_MODULO == 0) { filesToRead1.add(file); } saveCount.incrementAndGet(); bytesWritten.addAndGet(data.length); } try { Thread.sleep(random.nextInt(SLEEP_MAX)); } catch (InterruptedException e) { log.error(e.getMessage(), e); } } saveDone.set(true); }
@Override protected void doRun() { File file; while ((file = filesToRead2.poll()) != null || !read1Done.get()) { if (file != null) { byte bytes[] = dataStore.getData(file.getSessionId(), file.getId()); if (file.checkData(bytes) == false) { failures.incrementAndGet(); log.error("Detected error number: " + failures.get()); } read2Count.incrementAndGet(); bytesRead.addAndGet(bytes.length); } try { Thread.sleep(random.nextInt(SLEEP_MAX)); } catch (InterruptedException e) { log.error(e.getMessage(), e); } } read2Done.set(true); }