Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Perl) Bandwidth Throttled Asynchronous HTTP UploadDemonstrates how to do an HTTP upload asynchronously in a background thread with limiting the rate to an approximate number of bytes/second. The only difference between this example and one without bandwidth throttling is that the BandwidthThrottleUp property is set.
use chilkat(); $upload = chilkat::CkUpload->new(); # Specify the page (ASP, ASP.NET, Perl, Python, Ruby, CGI, etc) # that will process the HTTP Upload. $upload->put_Hostname("www.mywebserver.com"); $upload->put_Path("/receiveUpload.aspx"); # Add one or more files to be uploaded. $upload->AddFileReference("file1","dude.gif"); $upload->AddFileReference("file2","pigs.xml"); $upload->AddFileReference("file3","sample.doc"); # Set the BandwidthThrottleUp property to throttle to approx 64K/second $upload->put_BandwidthThrottleUp(65536); # Begin the HTTP upload in a background thread: $success = $upload->BeginUpload(); if ($success != 1) { print $upload->lastErrorText() . "\r\n"; } else { print "Upload started..." . "\r\n"; } # Wait for the upload to finish. # Print the progress as we wait... while (($upload->get_UploadInProgress() == 1)) { # We can abort the upload at any point by calling: # upload.AbortUpload(); # Display the percentage complete and the number of bytes uploaded so far.. # The total upload size will become set after the upload begins: print $upload->get_PercentUploaded() . "% " . $upload->get_NumBytesSent() . "/" . $upload->get_TotalUploadSize() . "\r\n"; # Sleep 2/10ths of a second. $upload->SleepMs(200); } # Did the upload succeed? if ($upload->get_UploadSuccess() == 1) { print "Files uploaded!" . "\r\n"; } else { print $upload->lastErrorText() . "\r\n"; } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.