gen_event.erl+中的错误;运行100 spawn(Erlang)时的proc_lib.erl
我有一个包含100个URL的文件“c:\1\0.txt” 我跑了100次 并且有错误gen_event.erl+中的错误;运行100 spawn(Erlang)时的proc_lib.erl,erlang,Erlang,我有一个包含100个URL的文件“c:\1\0.txt” 我跑了100次 并且有错误 (no error logger present) error: "Error in process <0.240.0> with exit value: {badarg,[{gen_event,send,2,[{file,\"gen_event.erl\"},{line,221}]},{proc_lib,exit_p,2,[{file,\"proc_lib.erl\"},{line,259}]}]
(no error logger present) error: "Error in process <0.240.0> with exit value: {badarg,[{gen_event,send,2,[{file,\"gen_event.erl\"},{line,221}]},{proc_lib,exit_p,2,[{file,\"proc_lib.erl\"},{line,259}]}]}\n"
(不存在错误记录器)错误:“进程中存在错误,退出值为:{badarg,[{gen\u event,send,2,[{file,\'gen\u event.erl\},{line,221}]},{proc\u lib,exit\u p,2,[{file,\'proc\u lib.erl\},{line,259}]}]}\n”
我的代码
-module(gsearch).
-compile(export_all).
-include("c:\\1\\ibrowse.hrl").
main() ->
ibrowse:start(),
{ok, Device} = file:open("c:\\1\\0.txt", read),
read_each_line(Device).
read_each_line(Device) ->
case io:get_line(Device, "") of
eof ->
file:close(Device);
Line ->
spawn(gsearch, url_get, [string:substr(Line, 1, length(Line) - 1)]),
read_each_line(Device)
end.
url_get(Url) ->
UrlHTTP = lists:concat(["http://www.", Url]),
case ibrowse:send_req(UrlHTTP, [], get, [], [], 10000) of
{ok, "200", _Headers, Data} ->
save(Data, Url);
Rslt ->
err
% io:format(Rslt)
% io:format("Request failed: ~p~n", [Rslt])
end.
save(Data, Url) ->
Filename = lists:concat(["c:\\d\\", Url]),
io:format("<"), io:format(Filename), io:format(">~n"),
{ok, IoDevice} = file:open(Filename, [write, binary]),
file:write_file(Filename, Data, [append]),
file:close(Filename).
-模块(gsearch)。
-编译(全部导出)。
-包括(“c:\\1\\ibrowse.hrl”)。
main()->
ibrowse:start(),
{ok,Device}=文件:打开(“c:\\1\\0.txt”,读取),
读取每行(设备)。
读取每行(设备)->
案例io:get_行(设备“”)的
eof->
文件:关闭(设备);
行->
spawn(gsearch,url_get,[string:substr(Line,1,length(Line)-1)]),
读取每行(设备)
结束。
url\u获取(url)->
UrlHTTP=lists:concat([“http://www.“,网址],
案例ibrowse:send_req(UrlHTTP,[],get,[],[],10000)of
{ok,“200”,_头,数据}->
保存(数据、Url);
Rslt->
犯错误
%io:格式(Rslt)
%io:格式(“请求失败:~p~n”,[Rslt])
结束。
保存(数据、Url)->
Filename=列表:concat([“c:\\d\\”,Url]),
io:格式(“~n”),
{ok,IoDevice}=file:open(文件名,[write,binary]),
文件:写入文件(文件名、数据、[append]),
文件:关闭(文件名)。
如果我是ibrowse:send_req 1 URL-没关系
但是如果我是ibrowse:send_req 100 URL,那就糟糕了
怎么了