Erlang 异步accept
来源:互联网 发布:淘宝无线端主图大小 编辑:程序博客网 时间:2024/05/16 05:54
-module(myserver).-behaviour(gen_server).%%define-define(POLICY_PORT,8080). %%监听端口-record(state, {callback, sock, ref,disable_connect}).%%%gen_server callback-export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]).-define(TCP_OPTION,[binary,{packet,0},{active,false},{reuseaddr, true}]).-export([start_link/0,start_server/0,loop/1]).init([])-> process_flag(trap_exit, true), %%{ok, test_info()}. start_server().handle_call(_Request,_From,_State)->Reply = ok,{reply,Reply,_State}.handle_cast(_Msg,_State) ->{noreply,_State}.handle_info({inet_async, LSock, Ref, {ok, Sock}},_State)->io:format("connect ...~n",[]),{noreply,_State};handle_info(_Info,_State) ->{noreply,_State}.terminate(_Reason,_State) ->io:format("I'm terminate.........~n"),ok.code_change(_OldVsn, State, _Extra) -> {ok, State}.%% ====================================================================%% Internal functions%% ====================================================================start_link() ->io:format("~p start..~n",[self()]),gen_server:start_link({local,?MODULE}, ?MODULE, [], []).start_server() ->case gen_tcp:listen(?POLICY_PORT, ?TCP_OPTION) of {ok,LSock} ->%%io:format("listen ok~p~n", []),loop(LSock);{error,Reason} -> {stop,Reason} end.loop(LSock) -> prim_inet:async_accept(LSock, -1). %%%
0 0
- Erlang 异步accept
- failed tcp accept emfile; erlang ;ejabberd;tsung
- accept()
- accept
- ACCEPT
- Accept
- accept
- Accept
- accept()
- erlang异步接收不到数据的问题
- Erlang
- Erlang
- Erlang
- erlang
- Erlang
- erlang
- erlang
- erlang
- SSL 认证安全相关名词
- debian 下的中文输入法 ibus
- Java开发牛人十大必备网站
- 浅谈MMSEG分词算法
- 锋利的SQL: 取出多列中的非空值
- Erlang 异步accept
- SQL Server之字符串函数
- Python yield 与生成器
- Intents and Intent Filters//意图和意图过滤器
- mysql主从同步
- python中文字符串截取问题
- git常用命令
- winpcap常用函数解析
- C语言——逗号运算符和逗号表达式