看了一个boost高并发网络框架,但是没搞懂部分代码。求解 [问题点数:150分,结帖人baidu_28726667]

Bbs1
本版专家分:0
结帖率 85.58%
C++ 高性能服务器网络框架设计细节
GitChat 作者:范蠡 这篇文章我们将介绍服务器的开发,并从多个方面探究如何开发一款高性能<em>高并发</em>的服务器程序。需要注意的是一般大型服务器,其复杂程度在于其业务,而不是在于其<em>代码</em>工程的基本框架。大型服务器一般有多个服务组成,可能会支持CDN,或者支持所谓的“分布式”等
网络请求框架----理解 HTTPs
一.前言 学习过计算机网络的都知道对于计算机网络的系统结构,如果以五层协议为标准可以将整个体系划分为五层,即物理层,数据链路层,网络层,运输层和最后的应用层,应用层的任务是通过应用进程间的交互来完成特定的网络应用,应用层的协议定义的是应用进程间的通信和交互的规则,具体的实现则是由下一层去实现,以 Android 来说就是 Android 客户端应用进程和服务器应用进程的通信。而 HTTP / HT...
Android常用的网络框架
Android常用的网路框架: 大多数应用程序基本都需要连接网络,发送一些数据给服务端,或者从服务端获取一些数据。通常在 Android 中进行网络连接一般使用 Scoket 和HTTP,HTTP 请求方式比 Scoket 多得多。HTTP 请求一般采用原生的 HttpClient 和 HttpUrlConnection 的两种网络访问方式。可是在 Android 5.0 的时候 Google 就...
网络基础大致框架
一、网络发展——从单机模式到网络互连模式 1、单机模式(独立模式):计算机之间相互独立 2、网络互联:多台计算机连接在一起,完成数据共享。 3、局域网(LAN):计算机数量更多,通过交换机和路由器连接在一起。 4、广域网(WAN):将距离很远的计算机连在一起。 二、网络协议 协议:某种大家都遵循的“约定”。 1、协议分层的优点 (1)各层之间相互独立。 ...
网络框架
-
boost实现的小型网络框架
用<em>boost</em>库实现的小型<em>网络框架</em>,适合想学习<em>boost</em>,学习网络异步编程,研究<em>高并发</em>服务器的同学
boost::asio-网络部分框架探索
ASIO 网络相关<em>部分</em>类关系:nnnn最上层的类basic_io_object提供了对各平台异步io框架的封装(win_iocp, linux_reactive_epoll),屏蔽了平台上的细节对外部暴露了两个重要接口:nn1.get_service用于获取平台的服务(iocp,reactive的支持)nn2.get_implementation操作资源的集合(socket句柄,本地地址,远程地址...
Boost.Asio C++ 网络编程之十:基于TCP的异步服务端
       这个流程图是相当复杂的:从Boost.Asio出来你可以看到4个箭头指向on_accept,on_read,on_write和on_check_ping。这也就意味着你永远不知道哪个异步调用是下<em>一个</em>完成的调用,<em>但是</em>你可以确定的是它是这4个操作中的<em>一个</em>。基于TCP的异步服务端1.流程图2.实现#ifdef WIN32n#define _WIN32_WINNT 0x0501n#inclu...
boost asio 实现一个TCP服务端线程池
tcp的服务器端绑定并监听端口,如果客户端比较少,可以对每个客户端创建<em>一个</em>线程进行通讯处理,但当客户端的数量比较庞大的时候这种思路就变得不可行,一方面线程切换的开销太大,另一方面,多数线程并不出于“工作”状态,长期出于等待事件的状态。这时,可以使用线程池的架构加快处理速度。rn废话少说,直接上<em>代码</em>rnrn#include n#include n#include n#include n#in
Boost.asio网络库多线程并发处理实现,以及asio在多线程模型中线程的调度情况和线程安全
1、实现多线程方法:其实就是多个线程同时调用io_service::run      for (int i = 0; i != m_nThreads; ++i){n <em>boost</em>::shared_ptr&amp;lt;<em>boost</em>::thread&amp;gt; poThread(new <em>boost</em>::thread(<em>boost</em>::bind(&amp;amp;<em>boost</em>::asio::io_service::run,&amp;amp;...
一个简单的游戏框架:网络方案
<em>一个</em>简单的游戏框架:网络方案 <em>代码</em>:https://github.com/HushengStudent/myGameFramework 1、C# socket编程: 使用socket,通过ip+端口,连接服务器和客户端,传递数据; //client: //创建Socket _socket = new Socket(addressFamily, SocketType.Stream, Pro...
架构师之路-网络框架的搭建(高逼格)
一,了解常见的框架1,你已经工作量3年不等或也许是菜鸟,只要接触Android开发那么在项目中必不可少的就是一些第三方框架:常见的网络请求框架,图片加载框架等…我们具体了解下常见的<em>网络框架</em>: <em>网络框架</em>:okhttp,Volley,Xutils,Retrofit.... 图片框架:picasso,xutils,imageLoader,glide,fresco,Fac... 他们的优点:兼容性好,<em>代码</em>很
8个java 网络编程框架介绍
自从JDK1.4中有了NIO以后,这个方面越来越活跃,也为java赢得更多开发者的支持。 做java网络编程需要掌握一些基本的知识和技能:套接字编程、阻塞/非阻塞通信、创建HTTP服务器与客户程序、数据报通信、对象的序列化与反序列化、Java反射机制、RMI框架、JDBC API、JavaMail API、MVC设计模式、安全网络通信、CORBA和Web服务 等等。 笔者在此只整理以下一些
网络框架解析
<em>网络框架</em>用法Volly: RequestQueue mQueue; mQueue= Volley.newRequestQueue(this); StringRequest stringRequest = new StringRequest("", new Response.Listener() { @Override public voi
Android进阶系列-手写高并发网络访问框架
<em>一个</em>项目,访问网络那是必须的。现在开源的<em>网络框架</em>很多。比如最开始的HeepClient,Volley,xUtils,最近很火的okhttp,还有例如retrofit,okGo这些都是很不错 的框架。<em>但是</em>毕竟是别人写的。出了什么问题都不好查找。这里自己封装了<em>一个</em><em>网络框架</em>,记录一下封装思路。n采用线程池做网络请求的缓冲,可以做到<em>高并发</em>。同时将网络请求和网络处理分开,这样逻辑更清楚。这里的模式参考了V
Android进阶系列-手写高并发图片加载框架
手写<em>高并发</em>图片加载框架图片加载框架在当前已经是相当的成熟了,想要有创新。就是需要从图片加载速度和图片缓存, 还有内存占用和生命周期监控上去做文章。glide做的就比较好。出自squre团队的良心作品。 该团队可以说是安卓业界良心,还有最近很火的retrofit和okhttp均出自该大神团队,还有很多呢。 框架用的不少,一直没什么时间去研究研究底层,总觉得还是要写<em>一个</em>自己用的吧.
基于boost的http客户端,支持多线程下载
1. 基于<em>boost</em>的http客户端,支持GET/POST/HEAD 2. 支持同步和异步,支持http/https 3. 支持并发下载
跨平台高性能TCP服务器框架 &boost;
基于<em>boost</em>的asio封装的高性能TCP服务器。asio已经有很好的事件封装机制,只有底层事件,没有针对TCP建立会话机制;也没有多包进行合包,以包为单位的事件提交机制。由于以上多种原因,决定对<em>boost</em>库进行更高的抽象和封装,对开发者提供一种更为便利的使用接口。
李宏毅一天搞懂深度学习pdf,信息量很大,值得下载
李宏毅一天<em>搞懂</em>深度学习,<em>看了</em>很有用,值得下载 李宏毅一天<em>搞懂</em>深度学习,<em>看了</em>很有用,值得下载
《一天搞懂深度学习-李宏毅》大纲
Lecture I : Introduction of Deep LearningnnIntroduction of Deep Learningn Step1 : define a set of functionn Step2 : goodness of functionn Step3 : pick the best functionn n Why Deep?n &quot;Hello World&quot; f...
boost::asio高效服务端
利用<em>boost</em>::asio 搭建<em>一个</em>C/S架构的服务端模型。 该服务端支持客户端长连接。 链接到其他服务器使用了链接池。
看了很久,还是没搞懂
帮忙看一下下面程序中存在的问题rn编译时,总是说CChatEdit类没有定义,明明定义了吗rn// CLIENTDlg.h : header filern//rnrn#if !defined(AFX_CLIENTDLG_H__147B530A_8B45_4AFE_A791_2D4D3238BE33__INCLUDED_)rn#define AFX_CLIENTDLG_H__147B530A_8B45_4AFE_A791_2D4D3238BE33__INCLUDED_rnrn#if _MSC_VER > 1000rn#pragma oncern#endif // _MSC_VER > 1000rnrnclass CChatEdit;rnrn/////////////////////////////////////////////////////////////////////////////rn// CCLIENTDlg dialogrnrnclass CCLIENTDlg : public CDialogrnrn// Constructionrnpublic:rn CCLIENTDlg(CWnd* pParent = NULL); // standard constructorrnrnpublic:rn// CChatEdit* m_ChatInputEdit;rnrn// Dialog Datarn //AFX_DATA(CCLIENTDlg)rn enum IDD = IDD_CLIENT_DIALOG ;rn CChatEdit m_ChatInputEdit;rn //AFX_DATArnrn // ClassWizard generated virtual function overridesrn //AFX_VIRTUAL(CCLIENTDlg)rn protected:rn virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV supportrn //AFX_VIRTUALrnrn// Implementationrnprotected:rn HICON m_hIcon;rnrn // Generated message map functionsrn //AFX_MSG(CCLIENTDlg)rn virtual BOOL OnInitDialog();rn afx_msg void OnSysCommand(UINT nID, LPARAM lParam);rn afx_msg void OnPaint();rn afx_msg HCURSOR OnQueryDragIcon();rn virtual void OnOK();rn afx_msg void OnClose();rn //AFX_MSGrn DECLARE_MESSAGE_MAP()rn;rnrn/////////////////////////////////////////////////////////////////////////////rn// CChatEdit windowrnrnclass CChatEdit : public CEditrnrn// Constructionrnpublic:rn CChatEdit();rnrn// Attributesrnpublic:rn CCLIENTDlg* m_pWnd;rn// Operationsrnpublic:rnrn// Overridesrn // ClassWizard generated virtual function overridesrn //AFX_VIRTUAL(CChatEdit)rn //AFX_VIRTUALrnrn// Implementationrnpublic:rn void init(CCLIENTDlg* pWnd);rn virtual ~CChatEdit();rnrn // Generated message map functionsrnprotected:rn //AFX_MSG(CChatEdit)rn afx_msg void OnChar(UINT nChar, UINT nRepCnt, UINT nFlags);rn //AFX_MSGrnrn DECLARE_MESSAGE_MAP()rn;rnrn/////////////////////////////////////////////////////////////////////////////rn//AFX_INSERT_LOCATIONrn// Microsoft Visual C++ will insert additional declarations immediately before the previous line.rnrn#endif // !defined(AFX_CLIENTDLG_H__147B530A_8B45_4AFE_A791_2D4D3238BE33__INCLUDED_)rn// CLIENTDlg.cpp : implementation filern//rnrn#include "stdafx.h"rn#include "CLIENT.h"rn#include "CLIENTDlg.h"rnrn#ifdef _DEBUGrn#define new DEBUG_NEWrn#undef THIS_FILErnstatic char THIS_FILE[] = __FILE__;rn#endifrnrn/////////////////////////////////////////////////////////////////////////////rn// CAboutDlg dialog used for App Aboutrnrnclass CAboutDlg : public CDialogrnrnpublic:rn CAboutDlg();rnrn// Dialog Datarn //AFX_DATA(CAboutDlg)rn enum IDD = IDD_ABOUTBOX ;rn //AFX_DATArnrn // ClassWizard generated virtual function overridesrn //AFX_VIRTUAL(CAboutDlg)rn protected:rn virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV supportrn //AFX_VIRTUALrnrn// Implementationrnprotected:rn //AFX_MSG(CAboutDlg)rn //AFX_MSGrn DECLARE_MESSAGE_MAP()rn;rnrnCAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD)rnrn //AFX_DATA_INIT(CAboutDlg)rn //AFX_DATA_INITrnrnrnvoid CAboutDlg::DoDataExchange(CDataExchange* pDX)rnrn CDialog::DoDataExchange(pDX);rn //AFX_DATA_MAP(CAboutDlg)rn //AFX_DATA_MAPrnrnrnBEGIN_MESSAGE_MAP(CAboutDlg, CDialog)rn //AFX_MSG_MAP(CAboutDlg)rn // No message handlersrn //AFX_MSG_MAPrnEND_MESSAGE_MAP()rnrn/////////////////////////////////////////////////////////////////////////////rn// CCLIENTDlg dialogrnrnCCLIENTDlg::CCLIENTDlg(CWnd* pParent /*=NULL*/)rn : CDialog(CCLIENTDlg::IDD, pParent)rnrn //AFX_DATA_INIT(CCLIENTDlg)rn //AFX_DATA_INITrn // Note that LoadIcon does not require a subsequent DestroyIcon in Win32rn m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);rnrnrnvoid CCLIENTDlg::DoDataExchange(CDataExchange* pDX)rnrn CDialog::DoDataExchange(pDX);rn //AFX_DATA_MAP(CCLIENTDlg)rn DDX_Control(pDX, IDC_ChatInput, m_ChatInputEdit);rn //AFX_DATA_MAPrnrnrnBEGIN_MESSAGE_MAP(CCLIENTDlg, CDialog)rn //AFX_MSG_MAP(CCLIENTDlg)rn ON_WM_SYSCOMMAND()rn ON_WM_PAINT()rn ON_WM_QUERYDRAGICON()rn ON_WM_CLOSE()rn //AFX_MSG_MAPrnEND_MESSAGE_MAP()rnrn/////////////////////////////////////////////////////////////////////////////rn// CCLIENTDlg message handlersrnrnBOOL CCLIENTDlg::OnInitDialog()rnrn CDialog::OnInitDialog();rnrn // Add "About..." menu item to system menu.rnrn // IDM_ABOUTBOX must be in the system command range.rn ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);rn ASSERT(IDM_ABOUTBOX < 0xF000);rnrn CMenu* pSysMenu = GetSystemMenu(FALSE);rn if (pSysMenu != NULL)rn rn CString strAboutMenu;rn strAboutMenu.LoadString(IDS_ABOUTBOX);rn if (!strAboutMenu.IsEmpty())rn rn pSysMenu->AppendMenu(MF_SEPARATOR);rn pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);rn rn rnrn // Set the icon for this dialog. The framework does this automaticallyrn // when the application's main window is not a dialogrn SetIcon(m_hIcon, TRUE); // Set big iconrn SetIcon(m_hIcon, FALSE); // Set small iconrn rn // TODO: Add extra initialization herern //子类化聊天内容输入编辑框rn m_ChatInputEdit.SubclassDlgItem(IDC_ChatInput,this);rn m_ChatInputEdit.init(this);rn/* CChatEdit* pChatEdit;rn pChatEdit = (CChatEdit*)GetDlgItem(IDC_ChatInput);rn pChatEdit->SubclassDlgItem(IDC_ChatInput,this);rn pChatEdit->init(this);rn*/ rn return TRUE; // return TRUE unless you set the focus to a controlrnrnrnvoid CCLIENTDlg::OnSysCommand(UINT nID, LPARAM lParam)rnrn if ((nID & 0xFFF0) == IDM_ABOUTBOX)rn rn CAboutDlg dlgAbout;rn dlgAbout.DoModal();rn rn elsern rn CDialog::OnSysCommand(nID, lParam);rn rnrnrn// If you add a minimize button to your dialog, you will need the code belowrn// to draw the icon. For MFC applications using the document/view model,rn// this is automatically done for you by the framework.rnrnvoid CCLIENTDlg::OnPaint() rnrn if (IsIconic())rn rn CPaintDC dc(this); // device context for paintingrnrn SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);rnrn // Center icon in client rectanglern int cxIcon = GetSystemMetrics(SM_CXICON);rn int cyIcon = GetSystemMetrics(SM_CYICON);rn CRect rect;rn GetClientRect(&rect);rn int x = (rect.Width() - cxIcon + 1) / 2;rn int y = (rect.Height() - cyIcon + 1) / 2;rnrn // Draw the iconrn dc.DrawIcon(x, y, m_hIcon);rn rn elsern rn CDialog::OnPaint();rn rnrnrn// The system calls this to obtain the cursor to display while the user dragsrn// the minimized window.rnHCURSOR CCLIENTDlg::OnQueryDragIcon()rnrn return (HCURSOR) m_hIcon;rnrnrnvoid CCLIENTDlg::OnOK() rnrn// CDialog::OnOK();rnrnrnvoid CCLIENTDlg::OnClose() rnrn CDialog::OnOK();rn rn CDialog::OnClose();rnrnrn/////////////////////////////////////////////////////////////////////////////rn// CChatEditrnrnCChatEdit::CChatEdit()rnrnrnrnCChatEdit::~CChatEdit()rnrnrnrnrnBEGIN_MESSAGE_MAP(CChatEdit, CEdit)rn //AFX_MSG_MAP(CChatEdit)rn ON_WM_CHAR()rn //AFX_MSG_MAPrnEND_MESSAGE_MAP()rnrn/////////////////////////////////////////////////////////////////////////////rn// CChatEdit message handlersrnrnvoid CChatEdit::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) rnrn if((nChar != VK_RETURN) || (nRepCnt != 1))rn rn CEdit::OnChar(nChar, nRepCnt, nFlags);rn return;rn rn elsern rn CString strText;rn GetWindowText(strText);rn// m_pWnd->SendMsg(strText);rnrn strText = _T("");rn SetWindowText(strText);rn rnrnrnvoid CChatEdit::init(CCLIENTDlg *pWnd)rnrn m_pWnd = pWnd;rnrn
求解特征值和特征向量
/************************************************************************/n/* 主成分分析<em>求解</em>特征值和特征向量 */n/***********************************
JAVA基础入门——面向对象
面向对象(Object Oriented,OO)nnYou know Object Oriented Principles,right?nn万物皆对象n对象这个词你可以理解为<em>一个</em>总称,房子是对象、桌子是对象、男朋友是对象、朴灿烈也是对象,并且对象具有唯一性:你的是属于你的,但不是属于我的。那么<em>一个</em>房子里都有啥呢,可能有电脑,桌子,椅子……现在这些“包含”在房子里的东西就不是东西了,而是叫做“属性”...
thrift网络通讯架构解析与实例验证
Thrift实现了C/S模式,通过<em>代码</em>生成工具将接口定义文件生成服务器端和客户端<em>代码</em>(可以为不同语言),从而实现服务端和客户端跨语言的支持。用户在Thirft描述文件中声明自己的服务,这些服务经过编译后会生成相应语言的<em>代码</em>文件,然后用户实现服务(客户端调用服务,服务器端提服务)便可以了。一、Thrift Rpc整体架构Thrift的协议栈如图:在Client和Server的最顶层都是用户自定义的处...
贪心法求解背包问题 C++
1.问题描述nn    背包问题是给定n个重量为{w1, w2,… ,wn}、价值为{v1, v2, … ,vn}的物品和<em>一个</em>容量为C的背包,求这些物品中的<em>一个</em>最有价值的子集,并且要能够装到背包中每次从物品集合中选择单位重量价值最大的物品,如果其重量小于背包容量,就可以把它装入,并将背包容量减去该物品的重量。nn    注意背包问题和0/1背包问题的区别,背包问题中,物品是可以<em>部分</em>装入背包的,0/...
【Caffe安装】安装Caffe时遇到libboost-all-dev 安装错误
个人思考:尝试其它帖子方案apt-get update 升级源后无效,重新安装lib<em>boost</em>,<em>boost</em>仍然无效;也许是其他软件占用lib<em>boost</em>依赖关系所致,在此需要版本调整。不建议使用conda 方式去安装lib<em>boost</em>和<em>boost</em>,Caffe它并找不到位置,除非加个软连接,别这样不好用 0 0...如不能正确安装lib<em>boost</em>,后面Caffe编译的时候会遇到,4:32: fatal ...
使用boost::asio库实现多个子进程监听同一个端口
nclass session_http {npublic:n session_http(<em>boost</em>::asio::io_context &amp;amp;io) : socket_(io) {};n void run(<em>boost</em>::asio::yield_context yield) {n <em>boost</em>::system::error_code ec;n <em>boost</em>::beast::flat_buffer b...
boost 最大流求解示例
#include nnn#include nnn#include n#include n#include nnn#include n#include n#include nnn/*n,n<em>boost</em>::property <<em>boost</em>::vertex_distance_
一句话搞懂: 高并发
【请尊重原创,转载请标明出处。。。。。。】 nn【更多资讯及资料获取,关注微信公众号号:浅醉JAVA】nn首先了解:多线程和并发之间是怎么一种关系?nn<em>高并发</em>是多线程执行效率的外在表现。nn多线程执行效率是<em>高并发</em>的本质所在。nn<em>高并发</em>概念nn<em>高并发</em>就是: 快速安全处理大量请求。nn三<em>部分</em>:快速 安全 处理大量请求 。 其中 快速/安全 是手段; 处理大量请求 既是目的,又是手段结果的表现。...
数理逻辑5 -- 计算理论1
图灵机 Turing Machinenn我读此书和做笔记主要出自于好奇心,前三章是为了<em>搞懂</em>神神秘秘的哥德尔不完备定理,顺便学习一阶逻辑的知识。第四章的集合论是为了以后的实分析、测度论、概率和随机过程等夯实基础,同时满足罗素悖论的好奇心。现在第五章,终于见到了自己的老本行,往好奇心方面说是为了弄懂停机问题,往夯实基础方面说是为了后续的复杂度理论和算法设计做准备,至少也要彻底弄懂P=NP究竟是什么问题...
一天搞懂深度学习李宏毅286页ppt带书签
台湾李宏毅老师一天<em>搞懂</em>深度学习286页ppt的pdf版本带书签
Netty 100万级高并发服务器配置
前言nn每一种该语言在某些极限情况下的表现一般都不太一样,那么我常用的Java语言,在达到100万个并发连接情况下,会怎么样呢,有些好奇,更有些期盼。nn这次使用经常使用的顺手的nettyNIO框架(netty-3.6.5.Final),封装的很好,接口很全面,就像它现在的域名netty.io,专注于网络IO。nn整个过程没有什么技术含量,浅显分析过就更显得有些枯燥无聊,准备好,硬着头皮吧。n...
真相:为什么HR只浏览简历却没有面试
rn[求助]前程无忧网友“nikerla”的困惑:rnrn    最近一周多,<em>一个</em>电话都没有了,而且最近的面试,大多都是“只看不买”的。我就奇怪了,也不至于那么邪门吧,最少最少,这面试电话总该有两个吧。听大家说情况不好,那我的简历浏览量也能保证每天10个左右,有些还是反复浏览且**的,怎么都没有消息了呢?rnrn    这会不会和我的简历修改有关,为了不使我的工作经历太丰富,我把有些短期工作的
VS2017使用Boost库中出现的小问题
前言首先说下原先使用Boost的配置:sublime3,Boost1.64.0和g++4.9.2在之前学习Boost过程中出现了类似以下的问题// undefined reference to <em>boost</em>::system::system_category() when compilingundefined reference to <em>boost</em>::system::system_category()幸好
volley-1.1.1 jar包
Android简单好用的<em>网络框架</em>,Volley是适合语数据量不大<em>但是</em>通信频繁的android实用<em>网络框架</em>
求解一个boost的问题
我用stlport库来编译了<em>boost</em>的system库rn<em>但是</em>,我在写测试程序的时候,发现出现了链接错误找不到lib<em>boost</em>_date_time-vc71-mt-sgd-1_47.librn因为我是用了stlport,应该是链接lib<em>boost</em>_date_time-vc71-mt-sgdp-1_47.lib才对啊,为什么会去查找原来的vc默认stl库编译的lib文件
go 并发控制
go语言天生支持<em>高并发</em>,同时访问几千几万网页不是问题。例如在写网络爬虫时,我们从根页面找出其他的页面,然后其他的页面又找出其他的页面,如此反复。虽然go可以支持同时访问那么多页面,<em>但是</em>操作系统却不支持同时打开那么多页面,因为每次访问页面都是一次socket通信。每次socket通信就会占用文件描述符fd,操作系统同时支持打开的fd是有限制的。所以有必要做并发控制。nn下面模拟爬虫的实验。有<em>一个</em>函数...
干货 | 台大“一天搞懂深度学习”课程PPT(下载方式见文末!!)
微信公众号rn关键字全网搜索最新排名rn【机器学习算法】:排名第一rn【机器学习】:排名第一rn【Python】:排名第三rn【算法】:排名第四rnDeep Learing Tutorialrn本篇文章我们给出了一份详尽的深度学习教程,该教程来自于台湾大学的李宏毅教授主讲的“一天<em>搞懂</em>深度学习”课程的全部PPT讲义,该讲义为268页图文。作者从神经网络的原理、框架形式以及将来的发展进行了详细的介绍,
netty-api4.1官方中文.zip
netty4.1的官方中文api文档,学习大数据<em>高并发</em><em>网络框架</em>netty的利器。(注:CHM格式)
手机攻击器
我到现在没<em>搞懂</em> 朋友们下了 和我一起看看啊
boost服务器框架
VS 2013 网络通讯使用<em>boost</em> asio 使用线程池 支持<em>高并发</em>。链接数据库为mysql也支持<em>高并发</em>。需要自己下<em>boost</em>库。是<em>一个</em>很好服务器简单框架
一直没搞懂一个问题
经常问搞嵌入式开发的人怎么调试,他们总是很自豪的说,printf,rn这也太原始了吧
十五个经典算法详解
十五个经典算法详解,多年困惑没<em>搞懂</em>的算法都在此了。
项目中代码没有报错,但是项目前面就是有一个红叉,真心烦
就比如类似这种,项目中的<em>代码</em>没有报错,<em>但是</em>项目前面就是有把X,因为我有强迫症,,,看着就觉得不舒服,觉得一定要把这个给去掉才能好好写<em>代码</em>,然后就发现了<em>一个</em>神奇的窗口,,,也不说神奇吧,只是之前的自己一直没有注意到这个窗口的存在,没错,就是这个窗口,把这边把每个err都显示出来了,然后只需要你把这边的错误的描述百度一下,就能找到对应的解决方法了,列如,这边我举个例子,这边我有这个错误Descript...
基于 epoll 的网络高并发模型开发
此程序最早是基于网上的<em>一个</em> select 程序开发的,后来让我改造成 epoll 模型的并发程序,最后又稍作改造并测试,形成现在的程序,最早的程序出处已经忘记了。其中对于 epoll 的 ET 和 LT 模式的使用一开始存在一些误解,这主要是由于一开始参考的网上的一些例子导致的,最终<em>看了</em><em>一个</em>兄弟的帖子(参考链接1),针对 ET 和 LT 的正确使用,才解决了开始并发静态业务无法达到 nginx 接近
nous_server
<em>一个</em>采用BOOST ASIO库写成的开源的<em>网络框架</em>,具有较高的性能,附带了采用此框架编写的DEMOD-A BOOST ASIO library using open-source web framework written in, high performance, with the use of this framework for the preparation of the DEMOD
利用c++ boost求解一阶微分方程计算船舶运动
船舶类的头文件 vessel.hnnn#pragma oncen#include &amp;lt;Eigen/Dense&amp;gt;nnclass Vessel {npublic:n Vessel(Eigen::Vector3f &amp;amp;eta_, Eigen::Vector3f &amp;amp;velocity_, Eigen::Matrix3f &amp;amp;M_, Eigen::Matrix3f &amp;amp;D_...
最简易的网络框架封装(新手可看)
网络通信在Android上的重要性就不多说了。 ndemo就是获取到“https://www.baidu.com/”的HTML<em>代码</em>后显示在textview中,如下图:(源码在文章结尾) nnnnn涉及知识点nn1、HTTP网络请求,HttpURLConnnection的使用 n2、简单线程 n3、定义接口,实现回调nn如果仅仅实现这个功能需要的java<em>代码</em>绝对在10行以下,<em>但是</em>本片主要是讲一下简易...
Android中搭建自己的项目网络框架
Android发展至今,先后出现了许多流行的<em>网络框架</em>,比如Xutils、OkHttp、Volley、Retrofit等框架,<em>但是</em>作为开发者,我们也应有自己的搭建<em>网络框架</em>的能里,以自己的项目“量体裁衣”,另一方面,不是每<em>一个</em><em>网络框架</em>都是没有缺点的比如nnXutils 网络请求框架的弊端:nnn1、请求方式、地址、参数都拆开了,应该封装到<em>一个</em>对象里面n2、请求之前应该判断网络n3、每次请求都new了一...
一个示例讲解我是如何处理高并发
去年做了<em>一个</em>远程升级的服务。客户端连接此服务可以下载更新程序。简单点说就是个TCP sever。基于C++。运行环境是centOS 6.5。刚开始客户端数量少而且访问不频繁,所以没太关注并发的问题。当时用工具测试大概只能支持的40次/秒的并发访问,而且已经有数据串包的情况出现了。最近有空做了不少的优化并记录了笔记备忘。下面给出的<em>代码</em>都不是完整的项目源码,我只是截取了关键<em>部分</em>用于说明主题我选择的测试工
《1天搞懂深度学习》李宏毅 PPT/PDF下载 深度学习 人工智能
《1天<em>搞懂</em>深度学习》,300多页的ppt,台湾李宏毅教授写的,非常棒。 不夸张地说,是我看过最系统,也最通俗易懂的,关于深度学习的文章。该ppt提供直观简明的深度学习引导,涵盖深度学习的基本概念,而不设计很多数学和理论细节。当然如果要做更深入的研究,数学肯定是必不可少的,<em>但是</em>本系列主要还是用图片和类比等方式,帮助初学者快速建立大局观,为了方便查看我已经转成了PDF,手机就能够查看,希望大家学习顺利。
高并发回应服务器
<em>一个</em>简单的<em>高并发</em>的回应服务器,主要是使用<em>boost</em>的库! 自己测试过可以达到5万个并发!
【C++】GET、POST网络请求boost.asio实现
想找<em>一个</em>轻量级、跨平台的C++网络请求函数库,然而折腾了一天也不如意。老规矩,没找到就自己动手吧。n本篇<em>代码</em>是对GET、POST请求的简单封装实现,返回的是std::string类型。n如果获取的json字符串之类,直接用就可以了。下一篇将奉上图片等格式的本地保存功能,尽情期待。
Eclipse编译某个Java类的时候,程序体没有错误,但是在package处有错误提示
错误提示信息太概如下:nnThe class file HashMap&amp;lt;K,V&amp;gt;.FrontCache contains a signature..........nn网上有给出的解决方法是:nn“这个问题产生的原因是在不同的jdk版本下编译,可以用如下办法解决:nn在window-preferenecs-java-installed jres下添加jdk 1.7(如果有就不必了);n...
Python 网络框架UrlLib 请求网络的三种方式
最近在看Python内容,在慕课网学习中,学习三种请求方法,先记录下来,上<em>代码</em>nnPython版本:Python 3.6 nIDE:pycharmnnnnfrom urllib import requestnimport http.cookiejarnnurl = 'https://www.douban.com/'nnprint ('第一种方法')nnwith request.urlopen(ur...
安装 boost 库遇到的坑
<em>boost</em>
boost序列化的一些进阶用法
拆分save、loadrnclass my_classn{n friend class <em>boost</em>::serialization::access;n BOOST_SERIALIZATION_SPLIT_MEMBER()n templaten void save(Archive & ar, const unsigned int version) constn {n }n templaten void
编译并裁剪boost1.65
1. 下载<em>boost</em>1.65.1(http://www.<em>boost</em>.org/users/history/version_1_65_1.html)n2. 将<em>boost</em>1.65.1解压到全英文路径文件夹下,路径中文件夹名称不能含空格,如:D:\dev_library\<em>boost</em>n3. 打开cmd,切换到D:\dev_library\<em>boost</em>\<em>boost</em>_1_65_1,运行bootstrap.ba
算法分析与设计之棋盘覆盖问题
问题描述:在<em>一个</em>2K*2k个方格组成的棋盘中,若恰有<em>一个</em>方格与其他方格不同,则称该方格为一特殊方格,且称该棋盘为一特殊棋盘。在棋盘覆盖问题中我们要用4个不同形态的L行形骨牌覆盖<em>一个</em>特定的棋盘上除特殊方格以外的所有方格,并且任何2个L形骨牌不得重叠覆盖。问题分析:对于特殊方格在棋盘上的位置,显然有4K种不同情形,也就意味着有4k种不同的棋盘,在任何<em>一个</em>2k*2K的棋盘覆盖中,用到的L形骨牌个数恰为(
maven项目项目名报红叉错误,但是代码没有报错解决办法
    首先检查problems中是否有报如下错误:            Cannot change version of project facet Dynamic Web Module to 2.5;            One or more constraints have not been satisfied;   这说明是动态web模块的版本没法自动改变,可以采用手动更改的方式解决...
boost:asio网络库初学之echo服务器客户端实现
为什么想起来学网络库呢前一阵在网上看到这么一段话n select 实在是太慢了.n n 在这种背景下, IBM 老大哥带领着MS老弟先搞了 IOCP . 然而开源的人有开源的做法, 在 NIH 综合症的影响下, BSD 的人敢为天下所不齿, 发明了 Kqueue. 同样在 NIH 综合症影响下, Linux 的一群 M* 的猴子捣鼓出了 epoll.n n 分裂, 让人头疼.n n 于
一次搞懂全排列——LeetCode四道Permutations问题详解
LeetCode中与Permutations相关的共有四题: n  31. Next Permutation n  46. Permutations n  47. Permutations II n  60. Permutation Sequence n  大致包括了所有全排列问题可能考到的题型。 n  本文按序列出了解这四道题的详细思路和AC<em>代码</em>。在各题之间,尽可能地使用了不同的解法,使大家对各种
《一天搞懂深度学习-带翻译版》
这是台大教授关于深度学习的ppt,有三百页,大<em>部分</em>页都加了注释,使用Adove pdf添加,建议使用该软件打开,共大家学习参考使用
boost.asio 代码 侯捷_-_Boost_技术与应用.pdf
侯捷老师的书很好,你<em>看了</em>会受益的.<em>boost</em>.asio <em>代码</em>是我从<em>boost</em>官网上拷贝下来的.
初步了解DeepLearning----《一天搞懂深度学习》
https://www.bilibili.com/video/av16543434/?from=search&seid=12028936768099284481rnrnrn在B站<em>看了</em><em>一个</em>讲解李宏毅教授的《一天<em>搞懂</em>深度学习》学习心得视频,如上。rnrnrn一。rn1.par*weight ->加上bias ->通过激活函数(activation function)->使得参数o(斯塔)最优化->在测
实现Android网络框架:(一)整体设计
动手做<em>一个</em>是我最喜欢的学习模式之一,最近自己在做<em>一个</em>Android使用的简单的<em>网络框架</em>,参考了Volley和csdn大牛的一些文章,虽然做出来的东西都差不多,但自己实现一遍真的对Http协议、网络执行、设计模式等等有了很深刻的认识,也能够发掘模块化、框架化的优势所在,和大家分享一下。
一天搞懂深度学习—学习笔记2(CNN)
1.卷积神经网络(convolutional neural network)n 当处理图片的时候,第一层全连接层将会非常大。为什么呢?想像一下,对于<em>一个</em>100 * 100 * 3的图片,如果第一层神经元个数为1000个,那么将会需要3*10^7+1000个参数,这是很大的<em>一个</em>数字,各位可以感受下。n n 神经元需要知道整个图片的信息去找到它的模式么? n 答案是否定的,一般来说,对于一类图片
java工程有错但是代码没有错的解决方法
java工程有错<em>但是</em><em>代码</em>没有错的解决方法nn今天遇到<em>一个</em>问题,<em>代码</em>没有报任何错,<em>但是</em>java工程显示有错。由于工程上午使用还是好的,所以可以排除时jdk不兼容导致的。在经历种种排查之后,发现是由于引用的包导致的错误。n解决办法:build path –&amp;gt; configure build path后将libraries中报×的jar包移除掉,工程报错消失。...
Boost.Asio学习之简单的HTTP服务器的完善
https://www.<em>boost</em>.org/doc/libs/1_61_0/doc/html/<em>boost</em>_asio/examples/cpp11_examples.html
TCP粘包问题
在TCP协议中,每次发送数据的长度是不确定的,从接受方来看,可能每次接受到的数据都不完整,或者受到多个数据包。这就是粘包问题。 n解决方式1:通过应用层的协议来解决粘包问题,每个应用包都带<em>一个</em>包头,包头指示了整个包的长度,当服务器端收到了指定的包长的数据包时,才说明获取了完整的数据包。 n解决方式2:指定包的结束方法,一旦获取到指定的标识,说明获取了完整的数据包。asio的异步读接口很容易解决粘包问
1天搞懂深度学习
”《1天<em>搞懂</em>深度学习》,300多页的ppt,台湾李宏毅教授写的,非常棒。不夸张地说,是我看过最系统,也最通俗易懂的,关于深度学习的文章。“
部分代码没看懂
[code=C/C++]// 数组的循环移位 rn#include rn rnint gcd(int m, int n) rn int r; rn while(r = m % n) rn m = n; n = r; rn rn return n; rn rn rnvoid shiftArray(int A[], int n, int k) rn // 因为左移的<em>代码</em>比右移的<em>代码</em>好实现的多,而右移k位 rn // 等价于左移-k位,-k = n - k。以下<em>代码</em>是通过左移-k位来实现右移k位 rn k = n - (k % n); rn for(int i = 0, cnt = gcd(n, k); i < cnt; i++) rn int t = A[i], p = i, j = (k+i) % n; rn while(j != i) rn A[p] = A[j]; p = j; j = (k + p) % n; [color=#FF0000] //解释一下这个while语句[/color]rn rn A[p] = t; rn rn [color=#FF0000]//为什么可以不用返回数组的值[/color]rnrnvoid printArray(int A[], int n) rn for(int i = 0; i < n; i++) rn printf("%-3d", A[i]); rn if((i+1)%10 == 0) printf("/n"); [color=#FF0000]//这一行<em>代码</em>的作用是什么?[/color]rn rn rnint main() rn int A[] = 1,2,3,4,5,6, 7; rn shiftArray(A, 7, 4); rn printArray(A, 7);rn getchar(); getchar(); rn return 0; rn rn[/code]
c#写的Scoket异步高并发并客户端和服务器
c#写的Scoket异步<em>高并发</em>并校验的客户端和服务器,并且经过测试比较完美!
Boost(五)——字符串处理(一):字符串操作
结合Boost官网nn由于这一章内容过多,我将采用四个小章,精简原文四个小<em>部分</em>内容。nn第四小章还包含了题目及讲解。nn区域设置:nnnsetlocale(LC_ALL,“”)nlocale::global(std::locale(&quot;German&quot;)); //设置全局区域德语环境nn字符串操作:nn一、将字符串所有字符转成大写nnn<em>boost</em>::algorithm::to_upper(&quot;&quot;)//自...
【PPT&视频讲解】一天搞懂深度学习(李宏毅)
台大教授李宏毅所写,深度学习综述ppt以及他录制的讲解视频, 介绍了深度学习目前的结构,前沿框架。视频配合PPT,学习效果非常棒,非常适合初学者!
电脑能正常上网上网,某些软件不能上网
一、问题描述nn    某些时候电脑能,正常上网,可是有些软件就是不能连接到网络,比如搜狗输入法不能连接到网络。(例如:下图)nnnn二、解决方案nn2.1 打开Internet软件nnnn2.2 进入Internet 选项nnnn2.3  连接 --&amp;gt; 局域网设置nnnn2.4 勾选上 自动检测设置。去掉使用自动配置脚本 (点击确定 退出)nnnn2.5 问题解决。nnnn ...
一篇文章彻底搞懂java动态代理的实现
网上有太多文章介绍动态代理是什么,这里就不介绍了,本文目的是让大家弄懂动态代理是如何做到这些神奇的功能的。nn先来<em>一个</em>小demo,通过这个demo来讲解,动态代理需要三个类:nnn<em>一个</em>接口类;n<em>一个</em>实现接口的业务类;n<em>一个</em>生成动态代理类,并通过动态代理类来执行业务方法的测试类;nnn下面我们就一一实现它们。nnn接口类ITaskService nnnnnpackage com.zqz.jdkpro...
1天搞懂深度学习(ppt)
《1天<em>搞懂</em>深度学习》资源下载。适合教学、学习参考,是很好的ppt展示。
Boost编译的一些注意事项
关于Boost的编译教程,网站上已经有很多。 n本文参考的网站是:http://www.cnblogs.com/zhcncn/p/3950477.html,在此博客中博主已经将Boost编译的各种参数做了非常详尽的介绍。仅仅查阅此博客,便可成功的编译出Boost。 n<em>但是</em>除此博客之外,还有一些应当注意的事项,在此博客中并没有完全提到,我对网上的资料加以整理,归纳到此博客中。一、编译x64版本Boos
Volley.jar
Volley<em>网络框架</em>Volley<em>网络框架</em>Volley<em>网络框架</em>Volley<em>网络框架</em>Volley<em>网络框架</em>Volley<em>网络框架</em>Volley<em>网络框架</em>Volley<em>网络框架</em>
一天搞懂深度学习
台大李宏毅老师的讲座《一天<em>搞懂</em>深度学习》,包含视频和讲义
基于无锁队列的高并发处理架构
众多周知,对于多线程访问同一段内存,无疑是要加上锁来控制,<em>但是</em>如果面对更高需求的并发 ,锁就成了并发量增加的瓶颈,下面这个图简单的实现了一种无锁任务处理系统,rn首先解释使用的模式rn     单生产                         -------- 队列           --------           多线程,但单消费者rnrnrn如以下图示:(手绘图,比较
boost asio 多线程同步服务器
#include&amp;lt;iostream&amp;gt;n#include&amp;lt;stdlib.h&amp;gt;n#include&amp;lt;<em>boost</em>\asio.hpp&amp;gt;n#include&amp;lt;<em>boost</em>\thread.hpp&amp;gt;nusing namespace std;nusing namespace <em>boost</em>::asio;nvoid doing(<em>boost</em>::shared_ptr&amp;lt;ip::...
一句话,看了半天没搞懂,请高手指点!(在线等待)
RegExp对象的定义在VBScript.dll中,<em>但是</em>VC++只能从VBScript.dll的第<em>一个</em>对象定义中生成类,而RegExp是VBScript.dll中的第二个对象定义。你可以使用VC++以资源的方式打开VBScript.dll,在其中选择TypeLib,将第2个TypeLib输出为regexp.tlb。然后在ClassWizard中添加新的类,选择From a typelib,然后选择regexp.tlb,这样VC会生成相应的类,你就可以使用RegExp对象了。 rnhttp://www.china-askpro.com/msg30/qa48.shtmlrn=============================== rn其中生成 regexp.tlb 的过程实在让认费解, rn"以资源方式打开":是不是点击添加资源,选中 VBScript.dll;rn"在其中选择TypeLib" 这个过程中根本不能选,是自己填写,但感觉填的东西没什么作用,只是自己用于区分。rn”将第2个TypeLib输出为regexp.tlb“,这个到底在什么地方。rnrn请指点rn
Boost电路调试经验总结
1、控制电路和主回路要分开供电,例如给光耦供电的12V电源和Boost的输入电压正负极都要分开接;rn2、由于Boost电路的电路结构,如果一开始就加上直流电源,当MOSFET导通的瞬间由于只有电感会导致电源短路,会烧掉电源线(本人亲身经历幸好无大碍),解决办法:先通PWM波,再将输入电压从0逐步升高。由于本人是做光伏MPPT的,所以打算先将输入用布遮住,再慢慢掀开;rnrn3、设置DSP输出的P
HR不看简历,是因为你犯了这些大忌!
投出去的简历没回音?先别急着抱怨企业招聘没有诚意、HR没有一双识人的慧眼,还是先来看看写简历的时候,你有没有犯过这三大错误! rn    rn  1. 求职意向/目标职能过于广泛:给HR的第一印象就是什么都能做其实什么也做不了;用职业术语来说,就是缺乏职业方向定位,不知道自己能做什么。所以求职意向一定要有针对性,否则会给HR你这个人很不职业的感觉。rnrnrn 2. 自我评价泛泛而谈:要结合自己的
李宏毅-一天搞懂深度学习 - pdf-有目录-301页
李宏毅老师2017版的深度学习讲义(PDF版),初步了解深度学习的经典资料。 https://www.youtube.com/playlist?list=PLJV_el3uVTsPMxPbjeX7PicgWbY7F8wW9 台大李宏毅主讲的Machine Learning and having it Deep and Structured深度学习课程(2017),课程主页:http://speech.ee.ntu.edu.tw/~tlkagk/courses_MLDS17.html
读《一天搞懂深度学习》ppt的笔记
读《一天<em>搞懂</em>深度学习》ppt笔记nn学习自http://www.cnblogs.com/liuyihai/p/8448977.html,推荐看这个链接。很全面很完整,我的笔记仅是记<em>部分</em>东西。nnnn读《一天<em>搞懂</em>深度学习》ppt笔记nsoftmaxn推荐的开发工具:ntipsn对训练过程:n(1)选择合适的损失n(2)需要mini batchn(3)选择合适的激励函数n(4)恰当的学习率n(5)mo...
高并发测试可能遇到的问题解决方法
并发测试的时候出现大量TIME_WAITnvim /etc/sysctl.confnnet.ipv4.tcp_tw_reuse = 1nnet.ipv4.tcp_tw_recycle = 1nsysctl -pn查看TIME_WAIT数量nnetstat -n | awk '/^tcp/ {++s[$NF]} END  {for{a in 5}} print a, s[a]'
Java并发编程
Java并发编程相关资料以及<em>高并发</em>解决方案,内含<em>部分</em><em>代码</em>
机器学习BOOST总结
XGBOOST算法基础nn其核心规则是回归树,与决策树类似,区别在于回归树预测实数值,决策树是类标签,也就是回归树的每<em>一个</em>叶节点是实数,最终结果是实数的累加,如果分到叶子结点的训练样本预测值不唯一的时候,以所有样本预测值的均值作为叶子结点输出的预测值。回归树解决分类问题时,也是基于回归树,而不是决策树。nnnn在回归树(base learner)的基础上,通过数增强(Tree Ensemble)的...
李宏毅—1天搞懂深度学习.pdf
最通俗易懂的关于深度学习的PPT,由台湾大学电机工程学助理教授李宏毅主讲
SSH实现新闻发布系统
没有附加数据库,<em>但是</em>很简答,<em>看了</em><em>代码</em>就可以自己建立
李宏毅—1天搞懂深度学习全部 300 页PPT
台湾大学李宏毅老师在 2016 年台湾资料科学年会上发布了<em>一个</em>前导课程“一天<em>搞懂</em>深度学习”。全部讲义包含 300 页 PPT。李宏毅老师的这份教程主要对神经网络的原理、目前存在形态以及未来的发展进行了介绍。深度学习的每<em>一个</em>核心概念在文中都有相关案例进行呈现,通俗易懂。主要分为以下四个方面进行介绍: 第一<em>部分</em>:介绍深度学习 第二<em>部分</em>:深度神经网络的建议 第三<em>部分</em>:神经网络的多样性 第四<em>部分</em>:未来趋势
台大教授《一天搞懂深度学习》PPT
本文是2016 台湾资料科学年会前导课程“一天<em>搞懂</em>深度学习”的全部讲义PPT(共268页),由台湾大学电机工程学助理教授李宏毅主讲。作者在文中分四个<em>部分</em>对神经网络的原理、目前存在形态以及未来的发展进行了介绍。非常容易理解,因为是中国人的讲义,更符合中国人的思维和理解习惯。图文并茂,不仅可作为学习资料,还可作为做相关PPT的良好素材。
汪文君高并发编程 完整版(第一、二、三阶段)
Java <em>高并发</em>编程实战视频 完整版 (第一阶段、第二阶段、第三阶段) 百度网盘 本资源转载自网络,如有侵权,请联系csdn管理员删除
MFC 技术内幕_10028790.rar下载
MFC技术内幕MFC技术内幕MFC技术内幕MFC技术内幕MFC技术内幕 相关下载链接:[url=//download.csdn.net/download/feng_yu00/2212610?utm_source=bbsseo]//download.csdn.net/download/feng_yu00/2212610?utm_source=bbsseo[/url]
JavaJ2EE笔试题下载
一,谈谈final, finally, finalize的区别。 Final --修饰符(关键字)。如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。 finally—在异常处理时提供 finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch子句就会执行,然后控制就会进入 finall 相关下载链接:[url=//download.csdn.net/download/dongmei840415/2883886?utm_source=bbsseo]//download.csdn.net/download/dongmei840415/2883886?utm_source=bbsseo[/url]
AD590中文资料AD590中文资料下载
AD590中文资料AD590中文资料AD590中文资料AD590中文资料AD590中文资料AD590中文资料AD590中文资料AD590中文资料 相关下载链接:[url=//download.csdn.net/download/liaoshuailove/3400802?utm_source=bbsseo]//download.csdn.net/download/liaoshuailove/3400802?utm_source=bbsseo[/url]
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 nlp视频音频看了有用吗 一天搞懂深度学习视频
我们是很有底线的