
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的软件都是在并发编程开发技术支持下开发而成的,下面我们就通过案例分析来了解一下,并发编程开发都有哪些开发方式。
一、并发
同时干多件事情,这就是并发的作用。web服务器可以利用并发同时处理大量用户的请求。只要我们需要程序同时干多件事情,我们就需要并发。
二、多线程
并发编程的一种形式,其采用多个线程执行程序。线程是一个独立的运行单元,每个进程内部有多个线程,每个线程可以各自同时执行指令。每个线程有自己独立的栈,但是与进程内的其他线程共享内存。线程池是线程更广泛的一种应用形式,其维护着一定数量的工作线程,这些线程等待着执行分配下来的任务。线程池可以随时监测线程的数量线程池催生了另外一种重要的并发形式:并行处理。
多线程并不是并发编程的形式,虽然.NET和Java等语言框架都对底层线程类型提供了支持,但是对开发人员并不友好,新的.NET和Java都提供了更高级别的抽象,让我们开发并发程序更加方便高效。
三、并行处理
将大块的任务分割成相互独立的小块,并分配给多个同时运行的线程处理。并行处理采用多线程,提高了处理器的利用效率。并行编程通常不适合服务器系统,服务器本身都具有并发处理能力。数据并行可以处理大量的彼此独立的数据,比如Hadoop等大数据处理框架。任务并行可以将彼此独立的拆分任务同时执行。
四、异步编程
并发编程的一种形式,它采用future模式或者回调(callback)机制,以避免产生不必要的线程。回调和事件作为老式的异步编程,在服务器端和GUI中都有广泛的应用。
一个future或者promise代表一些即将完成的操作,在.NET中的TPL中有Task和Task<TResult>,在Java中有FutureTask,在JS中有fetch。异步编程可以在启动一个操作之后,可以继续执行而不会被阻塞,待操作执行完之后,通知future或者执行回调函数,以便告知操作结束。
异步编程是一种功能强大的并发形式,但传统的异步编程特别复杂而且不易于代码维护。.NET和Node.JS支持的async和await,让异步编程变得跟串行编程一样简单。
五、响应式编程
一种声明式的编程模式,程序在该模式中对事件进行响应。
程序针对不同的事件进行响应并更新自己的状态。
异步编程针对启动的操作,响应编程针对可以任何事件重复发生的异步事件。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。