Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var Client = sync.Pool{ New: func() interface{} { return &http.Client{ Transport: &http.Transport{ Proxy: http.ProxyFromEnvironment, TLSClientConfig: &tls.Config{ MaxVersion: tls.VersionTLS12, }, }, } }, }
View Source
var (
ErrUnsupportedMultiThreading = errors.New("unsupported multi-threading")
)
Functions ¶
func PathExists ¶ added in v0.3.0
Types ¶
type BlockMetaData ¶ added in v0.3.0
type MultiThreadDownloader ¶ added in v0.3.0
type MultiThreadDownloader struct { Url string SavePath string FileName string FullPath string Client *http.Client Headers map[string]string Blocks []*BlockMetaData ThreadCount int }
func NewDownloader ¶ added in v0.3.0
func (*MultiThreadDownloader) Download ¶ added in v0.3.0
func (m *MultiThreadDownloader) Download() error
type TaskQueue ¶ added in v0.3.0
type TaskQueue chan *MultiThreadDownloader
type Worker ¶ added in v0.3.0
type Worker struct {
TaskChan TaskQueue
}
func (*Worker) Run ¶ added in v0.3.0
func (w *Worker) Run(wq chan TaskQueue, owner *WorkerPool)
type WorkerPool ¶ added in v0.3.0
type WorkerPool struct { sync.WaitGroup WorkerCount int TaskQueue TaskQueue WorkerQueue chan TaskQueue }
func NewWorkerPool ¶ added in v0.3.0
func NewWorkerPool(WorkerCount int) *WorkerPool
func (*WorkerPool) Start ¶ added in v0.3.0
func (wp *WorkerPool) Start()
Click to show internal directories.
Click to hide internal directories.