NSData的同步下载与NSConnection的同步下载

NSData 同步下载

    NSString * path = @"http://10.0.100.8/sns/my/user_list.php";

    //转网址对象
    NSURL * url = [NSURL URLWithString:path];

    //转Data
    NSData * data = [NSData dataWithContentsOfURL:url];

    if (data) {
         id obj = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
        //这是一个同步请求  请求和响应在一起
        NSLog(@"%@",obj);
    }

    //同步下载会堵塞线程  主线程 --- 显示UI

    UIAlertView * alert = [[UIAlertView alloc]initWithTitle:@"进入主界面" message:nil delegate:nil cancelButtonTitle:nil otherButtonTitles:@"确定", nil];

    [alert show];

NSConnection 同步下载

    NSString * path = @"http://10.0.100.8/sns/my/user_list.php";

    //转网址对象
    NSURL * url = [NSURL URLWithString:path];

    //转Data
    NSData * data = [NSData dataWithContentsOfURL:url];

    if (data) {
         id obj = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
        //这是一个同步请求  请求和响应一气呵成
        NSLog(@"%@",obj);
    }

    //同步下载会堵塞线程  主线程 --- 显示UI

    UIAlertView * alert = [[UIAlertView alloc]initWithTitle:@"进入主界面" message:nil delegate:nil cancelButtonTitle:nil otherButtonTitles:@"确定", nil];

    [alert show];
时间: 2024-10-17 01:18:49

NSData的同步下载与NSConnection的同步下载的相关文章

iOS网络编程--NSConnection的同步连接与异步连接

1 // 2 // ZFViewController.m 3 // 0628-表单验证 4 // 5 // Created by zfan on 14-6-28. 6 // Copyright (c) 2014年 zfan. All rights reserved. 7 // 8 9 #import "ZFViewController.h" 10 #import "MBProgressHUD+MJ.h" 11 12 @interface ZFViewControll

libcurl的封装,支持同步异步请求,支持多线程下载,支持https

最近在做一个项目,需要用到http get post等 需求分析需要做到同步和异步,异步请求的返回以可选的回调通知的方式进行. 本人以Linux为例,一步一步的来实现. 配置并且编译libcurl我以在Linux底下的交叉编译举例.libcurl源码下载: http://curl.haxx.se/download.html配置libcurl支持https和zlib压缩,必须需要openssl和zlib库openssl库源码下载: http://www.openssl.org/source/.下载

rsync远程同步及rsync+inotify实时同步

rsync远程同步及rsync+inotify实时同步 思维代入 正确.有效的备份方案是保障系统及数据安全的重要手段.在服务器中,通常会结合计划性任务.shell脚本来执行本地备份.但有时候为了提高备份的可靠性,异地备份也是非常有必要的.那下面就给大家介绍一种异地远程备份的方法:rsync远程备份. rsync简介 rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份.保持链接和权限,且采用优化的同步算法,在传输前执行压缩,因此非常适用于异地备份.镜像服务等应用

linux rsync远程同步+sersync+rsync实现实时同步

rsync是什么 rsync全称Remote Sync ,远程同步,是Linux/UNIX系统下的文件同步和数据传输工具,数据备份,它采用了"rsync算法"使一个客户机和远程文件服务器之间的文件同步. 作用 可以将同一个服务器的数据从一个分区备份到另一个分区,也可以将本地系统的数据通过网络传输方式备份到任何一个远程主机上: 优点 rsync可以在中断后恢复传输 rsync的功能特性 可以镜像保存整个目录树和文件系统:可以增量同步数据,文件传输效率高,因而同步时间很短:可以保持原文件的

如何将Android设备与Mac同步?SyncMate实时数据同步教程

由于Apple没有提供与Android设备同步的任何内置选项,因此在Mac和Android之间保持数据同步可能会非常令人头疼.您需要第三方应用才能在Mac和Android之间保持数据同步.其中一个应用程序是SyncMate,这是一个功能强大的工具,可以使Mac和Android上的数据保持最新状态.下面我们逐步介绍Mac和Android设备之间的数据同步过程,以方便您使用. 1.下载并安装SyncMate免费版到您的Mac.安装SyncMate后,启动它以显示主窗口. 2.在左侧窗格中单击"添加新

java中多线程模拟(多生产,多消费,Lock实现同步锁,替代synchronized同步代码块)

import java.util.concurrent.locks.*; class DuckMsg{ int size;//烤鸭的大小 String id;//烤鸭的厂家和标号 DuckMsg(){ } DuckMsg(int size, String id){ this.size=size; this.id=id; } public String toString(){ return id + " 大小为:" + size; } } class Duck{ private int

线程同步——内核对象实现线程同步——信号量

1 /* 2 3 信号量内核对象 4 信号量与其它内核量相同,包含一个使用计数,除此之外还包含两个量. 5 一个最大资源计数和一个当前资源计数. 6 信号量规则如下: 7 如果当前资源计数大于0,那么信号量处于触发状态. 8 如果当前资源计数等于0,那么信号量处于未触发状态. 9 系统绝不会让当前资源计数变为负数. 10 当前资源计数绝不会大于最大资源计数. 11 12 下面我们看一下信号量的创建函数 13 HANDLE CreateSemaphore( 14 LPSECURITY_ATTRIB

线程同步——用户模式下线程同步——Interlocked实现线程同步

1 线程同步分为用户模式下的线程同步和内核对象的线程同步. 2 3 当然用户模式下的线程同步实现速度比内核模式下快,但是功能也有局 4 5 6 7 8 //1.利用原子访问: Interlocked系列函数,关于Interlocked系列函数,我需要知道的是他们,执行的极快 9 10 //(1)首先是InterlockedExchangeAdd兄弟函数, 11 //第一个参数 Addend 代表进行操作数的地址, 12 //第二个参数 Value 代表增加的值,如果是想进行减法,传负数即可 13

线程同步——内核对象实现线程同步——事件内核对象

1 事件内核对象 2 3 事件类型对象有两种不同类型,手动重置和自动重置 4 手动重置:当一个手动重置对象被触发时候,等待该对象的所有线程变为可调度. 5 自动重置:当一个自动重置对象被触发时,只有一个等待该事件的线程会变为可调度 6 7 下面是一个创建事件内核对象的函数: 8 HANDLE CreateEvent( 9 LPSECURITY_ATTRIBUTES lpEventAttributes, 10 BOOL bManualReset, 11 BOOL bInitialState, 12