听说httpwebreqeust也有同步异步,那么跟线程的同异步有什么区别呢?

问题描述

听说httpwebreqeust也有同步异步,那么跟线程的同异步有什么区别呢?

解决方案

解决方案二:
没有线程哪来的异步啊。就好象你用c#编程,别人问题“你用这个编程那么跟机器语言有什么关系啊?”,你就可以回答“机器不执行机器语言,哪来的c#啊”。
解决方案三:
这里的同步与线程同步不是一个概念。线程同步是指多个线程同时访问一个变量或对象的情景httpwebrequest的同步(即同步代码)与我们多数的编程情景是一样的,下一行执行的代码依赖前一句执行完成才能继续执行,则这是同步代码,与httpwebrequest的同步执行是一样的httpwebrequest异步代码,当发起web请求时,执行线程(即主线程)立即返回,web请求交由线程池中的一个线程去运行,可见主线程可以在另一个线程去请求页面时去干别的事情,这样即提高了程序的吞吐量。尤其是在做http或tcp服务器时

时间: 2024-10-29 11:11:43

听说httpwebreqeust也有同步异步,那么跟线程的同异步有什么区别呢?的相关文章

C#:异步编程和线程的使用(.NET 4.5 )

  异步编程和线程处理是并发或并行编程非常重要的功能特征.为了实现异步编程,可使用线程也可以不用.将异步与线程同时讲,将有助于我们更好的理解它们的特征.   本文中涉及关键知识点   1. 异步编程 2. 线程的使用 3. 基于任务的异步模式 4. 并行编程 5. 总结   异步编程   什么是异步操作?异步操作是指某些操作能够独立运行,不依赖主流程或主其他处理流程.通常情况下,C#程序从Main方法开始,当Main方法返回时结束.所有的操作都是按顺序执行的.执行操作是有序列的,一个操作必须等到

[Unity3D]异步加载游戏场景与异步加载游戏资源进度条

摘要: 异步任务相信大家应该不会陌生,那么本章内容MOMO将带领大家学习Unity中的一些异步任务.在同步加载游戏场景的时候通常会使用方法 Application.LoadLevel("yourScene"); 这句代码执行完毕后程序会干什么呢??如下 ...     异步任务相信大家应该不会陌生,那么下面介绍一下Unity中的一些异步任务.在同步加载游戏场景的时候通常会使用方法 Application.LoadLevel("yourScene");  这句代码执行

C#:异步编程和线程的使用(.NET 4.5 )

异步编程和线程处理是并发或并行编程非常重要的功能特征.为了实现异步编程,可使用线程也可以不用.将异步与线程同时讲,将有助于我们更好的理解它们的特征. 本文中涉及关键知识点 1. 异步编程 2. 线程的使用 3. 基于任务的异步模式 4. 并行编程 5. 总结 异步编程 什么是异步操作?异步操作是指某些操作能够独立运行,不依赖主流程或主其他处理流程.通常情况下,C#程序从Main方法开始,当Main方法返回时结束.所有的操作都是按顺序执行的.执行操作是有序列的,一个操作必须等到其前面的操作完成才能

vc++-信号量和线程同步的问题:线程函数比较耗时

问题描述 信号量和线程同步的问题:线程函数比较耗时 void trigger() { UINT uWait=::WaitForSingleObject(IEvent,INFINITE); if ( uWait == WAIT_OBJECT_0 ) { processA(); } } processA(); 比较耗时,如果它还没有跑完,下一个触发又来了,就马上又开始执行一个processA(); 吗,还是等待上次的执行完成然后再执行? 解决方案 PC机上会出现乱序或是假死,也就是说有可能后发的先做

c++-利用互斥对象实现线程同步,并且将线程设计成一个类,但是报错了,作业。。。

问题描述 利用互斥对象实现线程同步,并且将线程设计成一个类,但是报错了,作业... 源代码: #include #include #include using namespace std; int tickets=100; HANDLE hMutex; class MyThread { private: char name; HANDLE hThread; public: MyThread(char name2) { name=name2; hThread=CreateThread(NULL,0

详解Java编程中线程同步以及定时启动线程的方法_java

使用wait()与notify()实现线程间协作 1. wait()与notify()/notifyAll()调用sleep()和yield()的时候锁并没有被释放,而调用wait()将释放锁.这样另一个任务(线程)可以获得当前对象的锁,从而进入它的synchronized方法中.可以通过notify()/notifyAll(),或者时间到期,从wait()中恢复执行. 只能在同步控制方法或同步块中调用wait().notify()和notifyAll().如果在非同步的方法里调用这些方法,在运

银行取款[多线程]{使用同步代码块确保线程同步}

经典例子:老婆(朱丽叶)老公(罗密欧),使用银行卡和存折,或者网银等,同时对同一账户操作的安全问题. 此处用多线程实现,同时取款的模拟实现,使用同步代码块确保线程同步,查看取款安全隐患问题,代码如下: --------------------------------------------------------------------------------------------------------------------------------------  * 线程同步 :使用同步块

重新想象 Windows 8 Store Apps (44) - 多线程之异步编程: 经典和最新的异步编程模型, IAsyncInfo 与 Task 相互转换

原文:重新想象 Windows 8 Store Apps (44) - 多线程之异步编程: 经典和最新的异步编程模型, IAsyncInfo 与 Task 相互转换 [源码下载] 重新想象 Windows 8 Store Apps (44) - 多线程之异步编程: 经典和最新的异步编程模型, IAsyncInfo 与 Task 相互转换 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 异步编程 经典的异步编程模型(IAsyncResult) 最新的异步编程模型(

多线程异步调用 java-多线程异步调用的问题

问题描述 多线程异步调用的问题 请改造以下类,使之在多线程异步调用时,而不会出数据覆盖,即并发冲突 pulbi class Math { private static int result = 0; public static int sum(int a, int b){ result = a + b; return result; } } 请教大神 怎么做 解决方案 如果不考虑同步控制粒度问题,直接把synchronized(Math.class) 加在当前类定义上的,是可行的 当然控制同步的