24
24
import java .util .concurrent .TimeUnit ;
25
25
import java .util .concurrent .atomic .AtomicInteger ;
26
26
import java .util .concurrent .atomic .AtomicLong ;
27
- import java .util .concurrent .atomic .LongAdder ;
28
27
import java .util .concurrent .locks .Condition ;
29
28
import java .util .concurrent .locks .ReentrantLock ;
30
29
@@ -103,7 +102,7 @@ public class Spider implements Runnable, Task {
103
102
104
103
private List <SpiderListener > spiderListeners ;
105
104
106
- private final LongAdder pageCount = new LongAdder ( );
105
+ private final AtomicLong pageCount = new AtomicLong ( 0 );
107
106
108
107
private Date startTime ;
109
108
@@ -324,7 +323,7 @@ public void run() {
324
323
onError (request );
325
324
logger .error ("process request " + request + " error" , e );
326
325
} finally {
327
- pageCount .increment ();
326
+ pageCount .incrementAndGet ();
328
327
signalNewUrl ();
329
328
}
330
329
}
@@ -336,7 +335,7 @@ public void run() {
336
335
if (destroyWhenExit ) {
337
336
close ();
338
337
}
339
- logger .info ("Spider {} closed! {} pages downloaded." , getUUID (), pageCount .sumThenReset ());
338
+ logger .info ("Spider {} closed! {} pages downloaded." , getUUID (), pageCount .get ());
340
339
}
341
340
342
341
protected void onError (Request request ) {
@@ -651,7 +650,7 @@ public boolean isSpawnUrl() {
651
650
* @since 0.4.1
652
651
*/
653
652
public long getPageCount () {
654
- return pageCount .sum ();
653
+ return pageCount .get ();
655
654
}
656
655
657
656
/**
0 commit comments