Ibcurl-based cross-platform multi-thread resumable download library and ibcurl download Library

Source: Internet
Author: User

Ibcurl-based cross-platform multi-thread resumable download library and ibcurl download Library

I have previously written a multi‑thread resumable download library, but it is a linux-based download program. Running in windows is okay, and there are various problems in android and debugging is still troublesome. In subsequent game development, on the one hand, the downloading requirements are not high, and on the other hand, the resources are limited, so we did not continue to study.

While I have time, I hope to implement a satisfactory download library to meet the following requirements:

1. multi-threaded download. Scheduling is performed based on the file size and the number of downloaded files. Generally, a file is downloaded in sequence. If there are many files, multiple files can be downloaded at the same time. This can be set.

2. resumable upload. The download progress is recorded in a configuration file, which requires that the file will not be damaged or cannot be downloaded again no matter the power is down or otherwise.

3. At least run stably under windows, android, iOS, and wp8.

4. The interface should be simple and the design should be simple.

5. You can set the speed limit and limit cpu usage.

6. Background download can be achieved through simple operations (depending on the actual situation, this is a low-priority target)


Why is it based on libcurl? This mainly starts from the stability of cross-platform. Now it seems that the cross-platform performance of libcurl is the best, and I am not confident to encapsulate code that is more stable than it. The core issue of libcurl-based download is how to maintain and schedule curl.

(To be continued)


Urgent database course design, human resource management system (Personnel Management)

Asp-based testing project
Design and Implementation of student information management system
Community Population Management System Based on ASP. NET
Course Teaching Website Design Based on ASP. NET
Company meeting website
C # university salary management system
C # online karaoke System
Website design of database principles Excellent Courses
Instructor Housing Management System
Design and Implementation of Computer Network Learning Websites
Design and Implementation of Pattern Recognition excellent course website
Asp personal blog
Asp online bookstore
Design and Implementation of a micro-computer learning website
Design and Implementation of the Score Analysis System
Pet Management System
Design of Video and pharmaceutical system based on 3G Communication
Web-based Library Information Query System
Discrete Mathematics Online Teaching System
System Analysis and Design of Enterprise Inventory Management
Human Resource Management Information System
Student assignment Management System
Community Forum
Online Subject System
Database Technology and Application excellent course construction website
Career intermediary information management system
Tap water billing management system
Member-based cartoon store (Chain Store) Management System
Employment platform for College Students Based on cscms
Design and Development of a WEB-based video monitoring system
Travel website
Design and Implementation of Health Websites
Design and Implementation of news management system
Design and Development of Trade Union Information Publishing System
Website of pattern recognition and Intelligent Research Institute
Internet billing system
C # graduate information management employment recruitment system
Sporting goods online store system
Website Group Information Management System
Employee performance appraisal system
Student archive information management C #
Design and Implementation of Dynamic IT training Website Based on ASP. NET Technology
Construction and Development of High-quality Course websites in Software Testing Technology
Design and Implementation of Online second-hand housing transaction system

ASP131 Enterprise Inventory Management System
Asp c language teaching system + Thesis
ASP)
Asp + SQLServer online bookstore system + Thesis
ASP + SQL excellent online question Library Design + Thesis
ASP + SQL library management system + Thesis
<Dir> asp + SQL Yulin tourism management system + thesis + answer PPT + opening report + screen recording
ASPAC Software Information Publishing System
ASPAC Student Forum
Asp Office System
ASP graduation question selection Management System (asp + SQL)
Asp graduate information management system source code + thesis + opening question + document + Foreign Language Translation
ASP product sales
ASP curtain website platform
200ASP E-commerce system
ASP e-government archives management system + Thesis
ASP clothing sales system paper + answer PPT + source code + translation + opening report + task book + internship report)
20ASP Special Topics on Olympic websites
Asp web-based office automation management system + executable source code + Thesis
ASP tutoring Information Management System
Asp instructor file management system + Thesis
Asp instructor Information Management System
ASP Teaching Interaction System
Design of asp hotel room reservation system
ASP Client Relationship Management System ASP + SQL + executable files + Thesis
Asp Tourism Information Management System
ASP Enterprise Inventory Management System ASP + SQL + executable files + Thesis
ASP Enterprise Logistics Management
Design and Implementation of ASP enterprise logistics platform + executable source program + ASP + ACCESS database
ASP job search website design (ASP)
ASP talent recruitment system
Asp Human Resource Management System ASP + SQL + thesis + Source Code executable
Asp online navigation (thesis + Source Code)
ASP after-sales service management system
ASP record
ASP + SQL
ASP Voting System
Asp book sales and publishing system
ASP Library Management System
Asp library management system + thesis + question + PPT
Asp 文+( ppt.rar)
ASP Network Office System
ASP Network Office System (source code and thesis)
ASP Online Shopping System
ASP Network hard drive file resource management system (thesis + code + Translation
ASP online book purchase
ASP Online Shopping System
ASP Online Examination System
Design and Development of asp online chat room System
ASP online Talent Management system + executable source code + Thesis
ASP online House Sales Management System
ASP online bookstore
ASP online post bar system
Asp online course selection system + Thesis
ASP Logistics System Design
Design and Implementation of ASP material management system +... the remaining full text>

I want to know which download tool is the best

Bt and Thunder are the most useful currently.
Their latest versions are bitcomet-0.63, thunder 5

The downloading software is based on P2SP technology. bt uses P2P technology. I believe you should know something about it. However, there are still differences between P2SP and P2P technologies.
First .. the protocols used by the two are completely different .. BT is a dedicated BT protocol .. as mentioned on the first floor .. it is a P2P technology .. point-to-point .. in BT network... there may be only one seed file .. others download this seed file .. then, each downloaded object will be uploaded to each other .. in theory, BT downloads must be uploaded and shared with others.
The protocols supported by thunder are the traditional FTP and HTTP protocols, as well as the dedicated protocol for thunder... the dedicated thunder protocol is not a typical P2P protocol .. if you carefully read the downloading process of thunder, you will find that... A large part of thunder is not P2P. search for resources .. for example, you can use thunder to download an object .. thunder searches all resources on the thunder server with the same size or hash value as the file name you downloaded .. then Thunder can download from different servers with multiple threads... so fast download from thunder.

BT download method:
Publisher author
Seed │
Publisher author

The downloading method of thunder is:
Resource 1 Region
Resource 2 │ --- downloadable
...... │
Resource N Branch

========================================================== ==========
What is P2SP technology?
-------------------------------------------------
The emergence of P2SP gives users a better choice. In addition to P2P, P2SP has more S (P2SP's "S" refers to servers ). P2SP effectively integrates the isolated server with its image resources and P2P resources through the multimedia retrieval database bridge. That is to say, the download stability and speed are greatly improved compared with the traditional P2P or P2S.

Despite the increasing popularity of broadband, the transmission of large-capacity files still takes a long time due to various factors, which seriously plagued modern people with a fast and efficient pace of life.

The birth of the P2SP-based download software thunder 4.0 solves this problem. You can enjoy the flying download experience through it. Is it fast enough? This is really exciting news.

The author downloads a 325 m three-National Policy client, which takes more than eight minutes to use thunder, with an average download speed of over 600 K per second. Since then, users do not have to wait for several hours or even longer to download large files, or endure intermittent pains for watching a beloved movie. Instead, they can "have both fish and bear's paw ".
========================================================== ==========
Therefore, the damage to the hard disk is relatively small and the speed is quite fast. Do you understand?

The official BT name is "Bit-Torrent" (which was nicknamed "abnormal download" by Chinese netizens). It is a multi-point sharing protocol software, developed by Bram Cohen, a programmer in California.

BitTorrent is designed specifically for the sharing of large-capacity files. It adopts a way of working like pyramid schemes.

BT first divides a file into many parts on the uploader. User A randomly downloads some of the parts, while user B randomly downloads the other parts.

In this way, Party A's BT will automatically select the fastest end based on the network connection speed with different computers, similarly, BT of Party B will go to the computer of Party A to obtain the downloaded part of Party A, which not only reduces the load on the server side, but also accelerates the download speed of both parties.

In fact, each user is uploading a file as a source while downloading it (someone else takes a part of that file from your computer ). This situation effectively utilizes the uplink bandwidth and avoids the bottleneck that traditional FTP users squeeze into the server to download the same file. The more people are added to the download, the more people are included.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.