Last active
August 29, 2015 14:25
-
-
Save gradyzhuo/4350d9b0d27d49161126 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let group = dispatch_group_create() | |
let queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0) | |
for index in 1...key{ | |
switch index { | |
case 1: | |
self.ImageUpload(url, ImageParams: imageparam, ImageData: self.imageData1,ReqToVar: "1") | |
case 2: | |
self.ImageUpload(url, ImageParams: imageparam, ImageData: self.imageData2,ReqToVar: "2") | |
case 3: | |
self.ImageUpload(url, ImageParams: imageparam, ImageData: self.imageData3,ReqToVar: "3") | |
case 4: | |
self.ImageUpload(url, ImageParams: imageparam, ImageData: self.imageData4,ReqToVar: "4") | |
case 5: | |
self.ImageUpload(url, ImageParams: imageparam, ImageData: self.imageData5,ReqToVar: "5") | |
case 6: | |
self.ImageUpload(url, ImageParams: imageparam, ImageData: self.imageData6,ReqToVar: "6") | |
default: | |
println("no image") | |
} | |
} | |
//當 group 的 leave 次數等同於 enter 次數,GCD 會notify並執行這裡的closure | |
dispatch_group_notify(group, queue) { () -> Void in | |
println("Final") | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
func ImageUpload(UrlString:String,ImageParams:Dictionary<String, String>,ImageData:NSData,ReqToVar:String){ | |
//增加 group 的進入次數,group同上方宣告的group | |
dispach_group_enter(group) | |
var urlRequest = urlRequestWithComponents(UrlString, parameters: ImageParams, imageData: ImageData) | |
var FileUrl:JSON! | |
Alamofire.upload(urlRequest.0, urlRequest.1) | |
.progress { (bytesWritten, totalBytesWritten, totalBytesExpectedToWrite) in | |
// println("\(totalBytesWritten) / \(totalBytesExpectedToWrite)") | |
} | |
.responseJSON { (request, response, data, error) in | |
// println("REQUEST \(request)") | |
// println("RESPONSE \(response)") | |
// println("JSON \(data)") | |
var json = JSON(data!) | |
FileUrl = json["path"] | |
switch ReqToVar{ | |
case "1": | |
self.ResponseImg1Url = FileUrl.string | |
case "2": | |
self.ResponseImg2Url = FileUrl.string | |
case "3": | |
self.ResponseImg3Url = FileUrl.string | |
case "4": | |
self.ResponseImg4Url = FileUrl.string | |
case "5": | |
self.ResponseImg5Url = FileUrl.string | |
case "6": | |
self.ResponseImg6Url = FileUrl.string | |
default: | |
println("no image") | |
} | |
println("url = \(FileUrl.string)") | |
// println("ERROR \(error)") | |
// | |
//減少 group 的進入次數 | |
dispach_group_leave(group) | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment