Add dead-lock note for QueueScheduler.

master
Joe Zhou 2022-11-24 00:26:09 +08:00
parent e735e4e585
commit 64e6a9800a
1 changed files with 5 additions and 0 deletions

View File

@ -4,12 +4,17 @@ import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.LinkedBlockingQueue;
import us.codecraft.webmagic.Request; import us.codecraft.webmagic.Request;
import us.codecraft.webmagic.Site;
import us.codecraft.webmagic.Task; import us.codecraft.webmagic.Task;
/** /**
* Basic Scheduler implementation.<br> * Basic Scheduler implementation.<br>
* Store urls to fetch in LinkedBlockingQueue and remove duplicate urls by HashMap. * Store urls to fetch in LinkedBlockingQueue and remove duplicate urls by HashMap.
* *
* Note: if you use this {@link QueueScheduler}
* with {@link Site#getCycleRetryTimes()} enabled, you may encountered dead-lock
* when the queue is full.
*
* @author code4crafter@gmail.com <br> * @author code4crafter@gmail.com <br>
* @since 0.1.0 * @since 0.1.0
*/ */