2014-11-19 00:25:21 +08:00
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʷ<EFBFBD> б <EFBFBD> <EFBFBD> <EFBFBD>
2017-03-12 14:49:48 +08:00
576) 2017.3.11
576.1) bugfix: acl_scan_dir.c <20> к<EFBFBD> <D0BA> <EFBFBD> acl_scan_dir_push <20> <> windows <20> ´ <EFBFBD> <C2B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <EFBFBD>
2017-02-12 21:39:38 +08:00
575) 2017.1.31
575.1) compile: <20> <> Linux/Android ƽ ̨<C6BD> ±<EFBFBD> <C2B1> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ļ<EFBFBD> <C4BC> Զ<EFBFBD> ʶ<EFBFBD> <CAB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> <EFBFBD> ͣ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Makefile <20> ļ<EFBFBD> <C4BC> <EFBFBD> ר<EFBFBD> <D7A8> ָ<EFBFBD> <D6B8>
574) 2017.1.28--1.29
574.1) bugfix: acl_dbuf_pool.c ֧<> <D6A7> ARM LINUX<55> <58> <EFBFBD> ڲ<EFBFBD> <DAB2> ڷ<EFBFBD> <DAB7> <EFBFBD> <EFBFBD> ڴ<EFBFBD> Ƭʱ<C6AC> <CAB1> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> 4
<EFBFBD> ֽڶ<EFBFBD> <EFBFBD> <EFBFBD>
2016-12-29 23:58:18 +08:00
573) 2016.12.29
573.1) bugfix: acl_slice.c <20> <> <EFBFBD> <EFBFBD> <DEB8> <EFBFBD> SLICE1 <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> һ <EFBFBD> <D2BB> BUG
572) 2016.12.28
572.1) feature: acl_mem_slice.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> tls_mem_realloc <20> <> <EFBFBD> <EFBFBD> Դָ<D4B4> <D6B8> Ϊ NULL
2016-12-03 20:09:21 +08:00
571) 2016.12.1
571.1) feature: acl_aio_server.c/acl_threads_server.c/acl_single_server.c <20> <> <EFBFBD> <EFBFBD>
<EFBFBD> ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> __service_on_listen<65> <6E> <EFBFBD> Ա<EFBFBD> <D4B1> ڽ<EFBFBD> <DABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݸ<F3B4ABB5> Ӧ<EFBFBD> <D3A6>
570) 2016.11.30
570.1) feature: acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> ּ<EFBFBD> <D6BC> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> ģ<EFBFBD> <C4A3> ƥ<EFBFBD> <C6A5> <EFBFBD> <EFBFBD> <EFBFBD> ƣ<EFBFBD> <C6A3> Ա<EFBFBD> <D4B1> ڶ<EFBFBD> <DAB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-11-27 21:03:24 +08:00
569) 2016.11.27
569.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> Ժ<EFBFBD> <D4BA> <EFBFBD> acl_default_meminfo <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʾ <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> 估<EFBFBD> ͷ<EFBFBD> <CDB7> <EFBFBD> <EFBFBD> <EFBFBD>
2016-11-18 21:45:40 +08:00
568) 2016.11.18
568.1) bugfix: acl_vstream.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> acl_vstream_fdopen <20> <> <EFBFBD> <EFBFBD> IO <20> <> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ģʽ <EFBFBD> Ǵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> ϲ <EFBFBD> Ӧ<EFBFBD> <EFBFBD> Ӧ<EFBFBD> <EFBFBD> <EFBFBD> Լ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ
568.2) workaround: <20> <> acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> з<EFBFBD> <D0B7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> use_limit <20> <> idle_limit
<EFBFBD> <EFBFBD> ȱʡ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ 0<> <30> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> <EFBFBD> Ĭ<EFBFBD> <C4AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Dz<EFBFBD> <C7B2> ˳<EFBFBD> <CBB3> <EFBFBD>
2016-10-28 15:01:42 +08:00
567) 2016.10.28
567.1) compile: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> centos4.7 <20> <> ʹ <EFBFBD> <CAB9> gcc 3.x.x <20> <> <EFBFBD> <EFBFBD>
2016-10-25 10:31:33 +08:00
566) 2016.10.25
566.1) compile: ʹ <> <CAB9> gcc <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ԥ<EFBFBD> <D4A4> <EFBFBD> <EFBFBD> ѡ <EFBFBD> <EFBFBD> <EEA3AC> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ļ<EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
566.2) bugfix: <20> <EFBFBD> <DEB8> <EFBFBD> url coder <20> <> <EFBFBD> <EFBFBD> '+' <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-10-21 15:02:50 +08:00
565) 2016.10.21
565.1) feature: ACL_VSTREAM <20> ṹ<EFBFBD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־λ omode<64> <65> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> UNIX ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD>
2016-10-21 17:22:40 +08:00
565.2) bugfix: acl_json.h ͷ<> ļ<EFBFBD> <C4BC> ж<EFBFBD> <D0B6> <EFBFBD> <EFBFBD> <EFBFBD> ACL_JSON_T_XXX <20> <> <EFBFBD> ظ<EFBFBD> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɻ<EFBFBD> <C9BB> <EFBFBD>
2016-10-21 15:02:50 +08:00
2016-10-11 20:58:37 +08:00
564) 2016.10.11
564.1) bugfix: acl_json_util.c <20> <> acl_json_build/acl_json_building <20> <> <EFBFBD> <EFBFBD> json
<EFBFBD> ַ<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> <EFBFBD> ı <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ͳ<EFBFBD> Ӧ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˫<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-10-10 23:03:05 +08:00
563) 2016.10.10
563.1) feature: acl_json_util.c <20> <> <EFBFBD> <EFBFBD> acl_json_create_null <20> <>
acl_json_create_array_null <20> <> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> null <20> <> <EFBFBD> ͵Ľڵ<C4BD>
2016-09-07 19:58:19 +08:00
562) 2016.9.7
562.1) bugfix: acl_vstream.c <20> <> acl_vstream_gets/acl_vstream_gets_nonl
/acl_vstream_readtags/acl_vstream_gets_peek/acl_vstream_gets_nonl_peek
Ӧ<EFBFBD> <EFBFBD> <EFBFBD> ں<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTREAM_FLAG_TAGYES <20> <> ־λ<D6BE> <CEBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڶ<EFBFBD> <DAB6> ζ<EFBFBD> <CEB6> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTREAM_FLAG_TAGYES <20> <> ־λ<D6BE> <CEBB> <EFBFBD> п<EFBFBD> <D0BF> ܻᱻ<DCBB> <E1B1BB> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> <C4B6> и<EFBFBD> <D0B8> <EFBFBD>
2016-09-01 20:00:58 +08:00
561) 2016.9.1
561.1) bugfix: acl_urlcode.c <20> е Ľ<D0B5> <C4BD> <EFBFBD> <EFBFBD> ֵ<EFBFBD> dec_tab <20> <> <EFBFBD> <EFBFBD>
2016-01-17 13:35:12 +08:00
------------------------------------------------------------------------
2016-08-23 13:20:33 +08:00
560) 2016.8.23
2016-09-01 20:00:58 +08:00
560.1) bugfix: acl_json_parse.c <20> У <EFBFBD> <D0A3> ڽ<EFBFBD> <DABD> <EFBFBD> JSON <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> Ҷ<EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> ־
2016-08-23 13:20:33 +08:00
2016-08-15 11:04:12 +08:00
559) 2016.8.15
559.1) bugfix: events.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> event_thr_prepare/event_prepare <20> У <EFBFBD> <D0A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ACL_VSTREAM_BFRD_CNT <20> <> read_ready <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ACL_VSTREAM_BFRD_CNT
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> read_ready ǰ<> 棬<EFBFBD> <E6A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> read_ready <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˣ<EFBFBD> <CBA3> <EFBFBD> Ҫ
<EFBFBD> <EFBFBD> read_ready <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0>
2016-08-15 14:53:43 +08:00
559.2) performance: events_epoll_thr.c <20> <> event_enable_read <20> <> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
/<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־λ EVENT_FDTABLE_FLAG_FIRE <20> <> <EFBFBD> ﵽ<EFBFBD> <EFB5BD> <EFBFBD> <EFBFBD> epoll_ctl <20> ĵ<EFBFBD> <C4B5> ô<EFBFBD> <C3B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-08-15 11:04:12 +08:00
2016-08-14 00:25:15 +08:00
558) 2016.8.13
558.1) bugfix: acl_vstream.c <20> е <EFBFBD> acl_vstream_writevn <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <D6B8> ƫ<EFBFBD> <C6AB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-08-11 13:36:20 +08:00
557) 2016.8.11
557.1) bugfix: events_epoll_thr.c <20> е <EFBFBD> event_enable_read <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFA3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ù<EFBFBD> <C3B9> <EFBFBD>
THREAD_UNLOCK <20> <> Ҫ epoll_ctl <20> <> <EFBFBD> <EFBFBD> ֮<EFBFBD> <D6AE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̺߳<DFB3> <CCBA> <EFBFBD> <EFBFBD> ߳<EFBFBD> ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> ͬһ <CDAC> <D2BB> <EFBFBD> <EFBFBD>
2016-08-11 13:57:57 +08:00
557.2) compile: <20> <> Ҫ<EFBFBD> <D2AA> acl_ypipe/acl_yqueue <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> vc2015 <20> Ĺ<EFBFBD> <C4B9> <EFBFBD> <EFBFBD> <EFBFBD>
2016-08-11 13:36:20 +08:00
2016-07-29 16:43:46 +08:00
556) 2016.7.29
556.1) feature: json <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> double <20> <> <EFBFBD> <EFBFBD> Ԫ<EFBFBD> <D4AA>
2016-07-20 21:09:46 +08:00
555) 2016.7.20
555.1) compile: __sync_val_compare_and_swap <20> <> Linux 32 λϵͳ<CFB5> ±<EFBFBD> <C2B1> <EFBFBD> ʱ<EFBFBD> <CAB1> Ҫ
<EFBFBD> ӱ<EFBFBD> <EFBFBD> <EFBFBD> ѡ <EFBFBD> <EFBFBD> -march=i686
2016-07-15 21:04:01 +08:00
554) 2016.7.14
554.1) bugfix: events_kernel.c <20> е <EFBFBD> stream_on_close <20> <> fdp == NULL ʱֱ<CAB1> ӷ<EFBFBD> <D3B7> <EFBFBD>
2016-07-10 19:12:54 +08:00
553) 2016.7.10
553.1) compile: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> gcc6.1 <20> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 뾯<EFBFBD> <EBBEAF>
2016-06-26 12:17:17 +08:00
552) 2016.6.26
552.1) feature: <20> <> <EFBFBD> <EFBFBD> acl_mbox.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> ֮<EFBFBD> <D6AE> <EFBFBD> ĵ<EFBFBD> <C4B5> <EFBFBD> ͨ<EFBFBD> ţ<EFBFBD> <C5A3> ڲ<EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> з<EFBFBD> ʽ
Ч<EFBFBD> ʸ<EFBFBD> <EFBFBD> <EFBFBD> -- by niukey@qq.com
2016-06-23 13:34:54 +08:00
551) 2016.6.21
551.1) safety: acl_vstream.c->acl_vstream_fdopen <20> е <EFBFBD> rw_timeout > 0 ʱ<> <CAB1> Ӧ<EFBFBD> <D3A6>
<EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> acl_getsocktype <20> ж<EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ
2016-05-22 00:08:10 +08:00
550) 2016.5.21
550.1) bugfix: acl_sys_file.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> acl_file_open <20> <> <EFBFBD> <EFBFBD> O_APPEND <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> ʱ<EFBFBD> <CAB1>
<EFBFBD> ļ<EFBFBD> ָ<EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> ָ<EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> β<EFBFBD> <EFBFBD>
549) 2016.5.12
549.1) feature: <20> <> <EFBFBD> <EFBFBD> ԭ<EFBFBD> Ӳ<EFBFBD> <D3B2> <EFBFBD> acl_atomic.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_yqueue.c, acl_ypipe.c
--- by niukey@qq.com
2016-05-10 21:58:47 +08:00
548) 2016.5.9
548.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> socket IO <20> <> hook <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_sys_socket.c <20> <> <EFBFBD> <EFBFBD> acl_vstream.c <20> <>
547) 2016.5.8
547.1) feature: acl_sys_socket.c <20> е <EFBFBD> SOCKET IO <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> HOOK<4F> <4B> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
acl_vstream.c <20> е <EFBFBD> acl_vstream_fdopen <20> ڴ<EFBFBD> <DAB4> <EFBFBD> SOCKET <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ʹ <EFBFBD> ñ<EFBFBD> HOOK <20> ĺ<EFBFBD> <C4BA> <EFBFBD>
546) 2016.5.5
546.1) safety: acl_xml_parse.c/acl_xml2_parse.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ NULL ʱ<> <CAB1> <EFBFBD> <EFBFBD> ""
546.2) feature: <20> <> acl_vstream.c <20> <> acl_vstream_fdopen ʱ<> <CAB1> <EFBFBD> Դ<EFBFBD> <D4B4> ж<EFBFBD> д<EFBFBD> <D0B4> ʱ
<EFBFBD> <EFBFBD> socket <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ <C4A3> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <DFBC> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD>
546.3) feature: acl_read_wait.c <20> е Ķ<D0B5> <C4B6> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> epoll <20> <> <EFBFBD> жϣ<D0B6> Ϊ<EFBFBD> <CEAA> ֹ epoll
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> رգ <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ´ <EFBFBD> <EFBFBD> <EFBFBD> epoll <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <C4B9> <EFBFBD>
545) 2016.5.4
545.1) bugfix: acl_sys_socket.c <20> к<EFBFBD> <D0BA> <EFBFBD> acl_socket_write <20> <EFBFBD> <DEB8> <EFBFBD> д<EFBFBD> <D0B4> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2016-04-23 20:30:49 +08:00
544) 2016.4.20
544.1) feature: acl_threads_server.c <20> <> alone ģʽ <C4A3> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ͷ<EFBFBD> ȫ<EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ̬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ա<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> ʹ <EFBFBD> <EFBFBD> valgrind <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD>
------------------------------------------------------------------------
2016-04-16 17:58:56 +08:00
543) 2016.4.16
543.1) bugfix: acl_xml_util.c->acl_xml_node_set_text_stream->acl_vstream_fseek
<EFBFBD> <EFBFBD> acl_xml2_util.c->acl_xml2_node_set_text_stream->acl_vstream_fseek <20> е ĵڶ<C4B5> <DAB6> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> ෴
543.2) compile: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC2012 ʹ <> <CAB9> x64 <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> һ Щ<D2BB> <D0A9> <EFBFBD> 뾯<EFBFBD> <EBBEAF>
2016-04-14 22:39:11 +08:00
542) 2016.4.14
542.1) feature: acl_argv_split.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> ָ<EFBFBD> <D6B8> <EFBFBD> <EFBFBD> <EFBFBD> acl_argv_quote_split <20> <> <EFBFBD> <EFBFBD>
<EFBFBD> ڶ<EFBFBD> <EFBFBD> ַ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> зָ<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> /˫<> <CBAB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <C3B5> ַ<EFBFBD> <D6B7> <EFBFBD>
2016-04-01 09:36:18 +08:00
541) 2016.3.29
541.1) bugfix: acl_vstream.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> stdin, stdout, stderr <20> <> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <E2B4A6>
2016-03-24 14:44:18 +08:00
540) 2016.3.22
540.1) bugfix: acl_vstring.c <20> <> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> fd <20> <> <EFBFBD> г <EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ACL_VSTRING
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> иö<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> mmap <20> ϣ<EFBFBD> <CFA3> Ӷ<EFBFBD> <D3B6> ᵼ<EFBFBD> <E1B5BC> <EFBFBD> ڴ<EFBFBD> й¶
2016-03-19 22:05:46 +08:00
539) 2016.3.18
539.1) bugfix: acl_threads_server.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> dispatch_receive <20> <> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
acl_read_fd ֱ<> Ӵ<EFBFBD> <D3B4> <EFBFBD> <D7BD> <EFBFBD> <EFBFBD> ж<EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> ݵģ<DDB5> <C4A3> <EFBFBD> ʱӦ<CAB1> ý<EFBFBD> conn->read_ready <20> <> ־λ<D6BE> <CEBB> 0<EFBFBD> <30>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ٴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͬʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD>
2016-03-13 20:01:41 +08:00
538) 2016.3.8
538.1) bugfix: acl_vstream_net.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> udp_read Ӧ<> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> read_ready = 0<> <30>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> UDP <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> event <20> ¼<EFBFBD> ѭ<EFBFBD> <D1AD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <C3B5> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD>
2016-03-03 17:07:53 +08:00
537) 2016.3.3
537.1) compile: acl_env.c <20> <> ȥ<EFBFBD> <C8A5> <EFBFBD> ˱<EFBFBD> <CBB1> <EFBFBD> _environ
537.2) compile: acl_server_api.h <20> е ĺ<D0B5> <C4BA> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD> ACL_API <20> Ա<EFBFBD> <D4B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɶ<EFBFBD> ̬<EFBFBD> <CCAC>
2016-03-01 20:20:52 +08:00
536) 2016.3.1
536.1) bugfix: acl_threads_server.c <20> <> daemon ģʽ <C4A3> µ<EFBFBD> ֻ<EFBFBD> <D6BB> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> ˿<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> <> <EFBFBD> ᴫ<EFBFBD> <E1B4AB> -s <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> socket_count ֵ<> <D6B5> ʼ <EFBFBD> <CABC> Ϊ 1
2016-02-28 17:48:17 +08:00
535) 2016.2.28
535.1) bugfix: acl_vstream.c <20> <> ǿ<EFBFBD> <C7BF> fp->read_cnt < 0 ʱ<> İ<EFBFBD> ȫ<EFBFBD> <C8AB> <EFBFBD> <EFBFBD>
535.2) feature: acl_threads_server.c ֧<> <D6A7> WINDOWS ƽ ̨<C6BD> <CCA8> ͬʱ֧<CAB1> <D6A7> daemon ģʽ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ
534) 2016.2.26
534.1) feature: acl_threads_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˼<EFBFBD> <CBBC> <EFBFBD> <EFBFBD> ӿ<EFBFBD>
2016-02-25 19:57:02 +08:00
533) 2016.2.22
533.1) feature: acl_inet_listen.c <20> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ֧<CAB1> <D6A7> ʹ <EFBFBD> <CAB9> SO_REUSEPORT,
TCP_FASTOPEN <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> TCP <20> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܣ<EFBFBD> <DCA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ծ<EFBFBD> <D4BE> <EFBFBD> Ҫ<EFBFBD> ں<EFBFBD> ֧<EFBFBD> ֣<EFBFBD> ͬʱ TCP_FASTOPEN
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> ڱ<EFBFBD> <EFBFBD> <EFBFBD> lib_acl.a ʱ<> <CAB1> <EFBFBD> <EFBFBD> Ԥ<EFBFBD> <D4A4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> USE_FASTOPEN<45> <4E>
532) 2016.2.18
532.1) feature: acl_xml/acl_xml2 <20> <> <EFBFBD> Ӻ<EFBFBD> <D3BA> <EFBFBD> <EFBFBD> ӿڣ<D3BF> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> xml <20> ڵ<EFBFBD> <DAB5> <EFBFBD> <EFBFBD> ı <EFBFBD>
531) 2016.2.16
531.1) performance: <20> Ż<EFBFBD> acl_vstream.c <20> <> acl_vstream_read <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> :
ͬʱ<EFBFBD> <EFBFBD> <EFBFBD> ˴ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݶ<EFBFBD> ȡ<EFBFBD> <EFBFBD> С <EFBFBD> <EFBFBD> <EFBFBD> ݶ<EFBFBD> ȡ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
530) 2016.2.13
530.1) compile: ʹ <> <CAB9> Ԥ<EFBFBD> <D4A4> <EFBFBD> 룬<EFBFBD> Ż<EFBFBD> gcc <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ٶ<EFBFBD>
529) 2016.2.5
529.1) feature: acl_vstring.c <20> <> <EFBFBD> ڴ<EFBFBD> ӳ<EFBFBD> <D3B3> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> ͬʱ֧<CAB1> <D6A7> UNIX/WINDOWS
2016-02-05 10:10:24 +08:00
528) 2016.2.1
528.1) feature: acl_vstring.c, <20> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ṹ
527) 2016.1.30
527.1) feature: acl_vstring.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstring_mmap_alloc<6F> <63> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD>
<EFBFBD> ļ<EFBFBD> ӳ<EFBFBD> ䷽ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD>
527.2) feature&safety: acl_vstring.c <20> <> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> <EFBFBD> <DEB6> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> ÿռ 书<D5BC> <E4B9A6>
527.3) samples/mmap_string: <20> <> ʾ <EFBFBD> <CABE> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> ļ<EFBFBD> ӳ<EFBFBD> ䷽ʽ ʹ <CABD> <CAB9> acl_vstring
<EFBFBD> Ĺ<EFBFBD> <EFBFBD> <EFBFBD>
2016-01-17 13:35:12 +08:00
526) 2016.1.17
526.1) feature: acl_default_malloc.c<> <63> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_default_realloc <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> ַΪ
NULL<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <EFBFBD> л<EFBFBD> <EFBFBD> <EFBFBD> acl_default_malloc <20> <> <EFBFBD> <EFBFBD>
526.2) feature: acl_vstream.c<> <63> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_fdopen <20> <> <EFBFBD> Զ<EFBFBD> <D4B6> ж<EFBFBD> <D0B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD>
Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> fdtype <20> ķǷ<C4B7> <C7B7> <EFBFBD>
526.3) feature: events_select.c/events_poll.c/events_kernel.c<> <63> <EFBFBD> ڲ<EFBFBD> <DAB2> Զ<EFBFBD> <D4B6> ж<EFBFBD> <D0B6> Ƿ<EFBFBD>
Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> ֮<EFBFBD> <EFBFBD> <EFBFBD> Լ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> ֮<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϶<EFBFBD>
525) 2016.1.16
525.1) bugfix: acl_multi_server.c/acl_single_server.c/acl_trigger_server.c<> <63> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ؼ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿڵĶ<EFBFBD> <EFBFBD> ¼<EFBFBD> ʱ<EFBFBD> <EFBFBD> Ӧ<EFBFBD> õ<EFBFBD> <EFBFBD> <EFBFBD> acl_event_enable_listen<65> <6E> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǵ<EFBFBD> <C7B5> <EFBFBD>
acl_event_enable_read
525.2) feature: <20> <> <EFBFBD> Ӻ<EFBFBD> <D3BA> <EFBFBD> acl_check_socket <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <D7BD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <D7BD> <EFBFBD>
524) 2016.1.8
524.1) bugfix: acl_xml_parse.c/acl_xml2_parse.c/acl_xml_util.c/acl_xml2_util.c,
<EFBFBD> <EFBFBD> <EFBFBD> ˵<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݽڵ<EFBFBD> Ϊ META, COMMENT, CDATA ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> 봴<EFBFBD> <EBB4B4> xml <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> BUG
2015-04-04 15:25:29 +08:00
------------------------------------------------------------------------
2015-12-29 11:33:32 +08:00
523) 2015.12.28
523.1) acl_read_wait.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> acl_read_wait <20> <> 32 λ<> ĵͰ汾 LINUX ƽ ̨<C6BD> <CCA8>
ʹ <EFBFBD> <EFBFBD> epoll <20> <> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> <EFBFBD> Ը<EFBFBD> <D4B8> <EFBFBD> poll <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵ<EFBFBD> ֶ<EFBFBD> <D6B6> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD>
522) 2015.12.24
522.1) bugfix: <20> <EFBFBD> <DEB8> <EFBFBD> valgrind <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_xml_parse.c <20> к<EFBFBD> <D0BA> <EFBFBD> cdata_prepare
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
521) 2015.12.23
521.1) bugfix: acl_xml_parse.c/acl_xml2_parse.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> յ<EFBFBD> CDATA ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2015-12-21 13:25:30 +08:00
520) 2015.12.21
520.1) bugfix: master_sig.c <20> <> <EFBFBD> ڶ<EFBFBD> <DAB6> <EFBFBD> <EFBFBD> <EFBFBD> ʱӦ<CAB1> <D3A6> ʹ <EFBFBD> <CAB9> acl_vstream_read<61> <64> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵͳ API read<61> <64> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> γ <EFBFBD> <CEB3> <EFBFBD> ѭ<EFBFBD> <D1AD>
520.2) bugfix: event <20> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> ּ<EFBFBD> <D6BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֺ<EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <D7BD> ֣<EFBFBD> <D6A3> е ĵط<C4B5> δ<EFBFBD> <CEB4>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> listener <20> <> 1<> <31> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <D1AD>
2015-12-21 23:53:55 +08:00
520.3) bugfix: acl_read_wait <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> epoll <20> ķ<EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <D1AD>
2015-12-21 13:25:30 +08:00
2015-12-20 15:27:55 +08:00
519) 2015.12.20
519.1) feature: acl_aio.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ü<EFBFBD> <C3BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <D7BD> <EFBFBD> ״̬<D7B4> <CCAC> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
519.2) performance: events.c, events_kernel.c, events_iocp.c, <20> <> ÿһ <C3BF> <D2BB> <EFBFBD> ¼<EFBFBD>
ѭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ȼ<EFBFBD> <EFBFBD> һ Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵĻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD>
ѭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̣<EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> ֤<EFBFBD> <EFBFBD> IO <20> <> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> Ч<EFBFBD> <D0A7>
2015-12-19 22:21:39 +08:00
518) 2015.12.19
518.1) bugfix: acl_sys_socket.c <20> ĺ<EFBFBD> <C4BA> <EFBFBD> acl_socket_read <20> <> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> fp
<EFBFBD> <EFBFBD> ϵͳ<EFBFBD> ɶ<EFBFBD> <EFBFBD> <EFBFBD> ־λ(sys_read_ready <20> <> 0)<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܻ<EFBFBD> <DCBB> <EFBFBD> <EFBFBD> ɶ<EFBFBD> <C9B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽<EFBFBD> <ECB2BD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <D1AD>
518.2) bugfix: acl_aio_write.c <20> ĺ<EFBFBD> <C4BA> <EFBFBD> acl_aio_writen <20> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱδ<CAB1> <CEB4> Ƕ<EFBFBD> <C7B6>
<EFBFBD> 㼶<EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2015-12-18 16:36:24 +08:00
517) 2015.12.18
517.1) bugfix: events.c <20> к<EFBFBD> <D0BA> <EFBFBD> event_prepare <20> <> <EFBFBD> Լ<EFBFBD> <D4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ú<EFBFBD> <C3BA> Ե<EFBFBD> <D4B5> <EFBFBD> ־λ
sys_read_ready<EFBFBD> <EFBFBD> <EFBFBD> ñ<EFBFBD> ־λ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IO <20> <EFBFBD> <D7BD> <EFBFBD> <EFBFBD> <EFBFBD> Ч
517.2) bugfix: <20> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> 治Ӧ<E6B2BB> <D3A6> <EFBFBD> Լ<EFBFBD> <D4BC> <EFBFBD> <EFBFBD> <EFBFBD> <D7BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> sys_read_ready <20> <> ־λ
517.3) bugfix: master_status.c <20> <> <EFBFBD> <EFBFBD> master_status_event <20> <> <EFBFBD> ڶ<EFBFBD> <DAB6> <EFBFBD> <EFBFBD> <EFBFBD> ʱӦ<CAB1> <D3A6> ʹ <EFBFBD> <CAB9>
acl_vstream_read<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧʹ <EFBFBD> <EFBFBD> ϵͳ API read<61> <64> <EFBFBD> <EFBFBD> Ϊ acl_vstream_read <20> ڲ<EFBFBD> <DAB2> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> <EFBFBD>
sys_read_ready <20> <> ־λ
2015-12-12 23:00:03 +08:00
516) 2015.12.9
516.1) feature: acl_xml_parse.c / acl_xml2_parse.c can parse CDATA
2015-12-08 22:28:10 +08:00
515) 2015.12.8
515.1) bugfix: acl_vstream.c <20> е <EFBFBD> read/write <20> ӿڱ<D3BF> ע<EFBFBD> <D7A2> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> Ϊû<CEAA> ж<EFBFBD> Ӧ<EFBFBD> <D3A6>
writev ע<> 뷽ʽ <EBB7BD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> ε<EFBFBD> <CEB5> <EFBFBD> write <20> <> ģ<EFBFBD> <C4A3> writev <20> <> <EFBFBD> <EFBFBD>
515.2) bugfix: events.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> event_prepare <20> <> <EFBFBD> <EFBFBD> sys_read_ready = 1 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> event_type Ϊ ACL_EVENT_ACCEPT <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ų<EFBFBD>
514) 2015.12.7
514.1) performance: acl_xml_util.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> acl_xml_create_node <20> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ڵ<EFBFBD> ʱ<EFBFBD> <CAB1>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݱȽϴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> Ŀ<EFBFBD> <EFBFBD> <EFBFBD> Ƶ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ͷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ԥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԣ<EFBFBD>
<EFBFBD> Լ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
514.2) bugfix: acl_xml.c/acl_xml2.c/acl_xml3.c <20> <> ɾ<EFBFBD> <C9BE> <EFBFBD> ڵ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2015-12-04 10:08:57 +08:00
513) 2015.12.4
513.1) bugfix: fdp->stream->sys_read_ready should be check in event_prepare
2015-12-06 16:56:21 +08:00
513.2) performance: acl_xmlcode.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> acl_xml_encode/acl_xml_decode ͨ<> <CDA8>
<EFBFBD> <EFBFBD> ǰԤ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ棬<EFBFBD> Լ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> /<2F> ͷ<EFBFBD> <CDB7> ڴ<EFBFBD> <DAB4> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> ̶<EFBFBD> <CCB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
513.3) bugfix: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTREAM::sys_read_ready <20> <> ־λ<D6BE> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream.c
<EFBFBD> ĺ<EFBFBD> <EFBFBD> <EFBFBD> sys_read <20> <> <EFBFBD> Ƴ<EFBFBD> <C6B3> <EFBFBD> <EFBFBD> <EFBFBD> acl_sys_socket.c <20> ĺ<EFBFBD> <C4BA> <EFBFBD> acl_socket_read <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ñ<EFBFBD> ־λ
2015-12-04 10:08:57 +08:00
function of events.c for reading event.
2015-12-03 17:00:07 +08:00
512) 2015.12.3
512.1) bugfix: acl_vstream.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> sys_read <20> б <EFBFBD> <D0B1> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> fread_fn/read_fn
ǰ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɶ<EFBFBD> <EFBFBD> <EFBFBD> ־λ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IO <20> <> <EFBFBD> Ӻ<EFBFBD> <D3BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> øñ<C3B8> ־λʱ<CEBB> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч
511) 2015.12.2
511.1) feature: acl_xml2 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿ<EFBFBD> acl_xml2_mmap_alloc<6F> <63> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> ļ<EFBFBD>
ӳ<EFBFBD> ䷽ʽ <EFBFBD> <EFBFBD> xml <20> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> н<EFBFBD> <D0BD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CDB4> <EFBFBD>
511.2) feature: acl_xml2 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> ļ<EFBFBD> <C4BC> ռ <EFBFBD> <D5BC> <EFBFBD> С <EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> ䷽ʽ
510) 2015.11.29
510.1) feature: <20> <> <EFBFBD> <EFBFBD> xml <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_xml3<6C> <33> <EFBFBD> ý<EFBFBD> <C3BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> RapidXML(<28> ų<EFBFBD> <C5B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܼ<EFBFBD> <DCBC> <EFBFBD> <EFBFBD> ൱
510.2) feature: acl_xml2 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˽<EFBFBD> xml <20> <> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> Ϊ<EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <C4B9> <EFBFBD>
2015-11-27 23:07:43 +08:00
509) 2015.11.27
509.1) feature: acl_dbuf_pool.c <20> ڵ<EFBFBD> <DAB5> <EFBFBD> acl_dbuf_pool_free ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> <D0A7> <EFBFBD> ͷŵ<CDB7>
<EFBFBD> <EFBFBD> <EFBFBD> ڴ棬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstring.c <20> <> <EFBFBD> ڽ<EFBFBD> <DABD> д<EFBFBD> <D0B4> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> ؽ<EFBFBD> <D8BD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷŵ<CDB7>
508) 2015.11.26
508.1) feature: acl_xml_parse.c ֧<> ֽ<EFBFBD> <D6BD> <EFBFBD> <EFBFBD> ж<EFBFBD> <D0B6> <EFBFBD> <EFBFBD> <EFBFBD> xml <20> <> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> xml <20> ĵ<EFBFBD>
507) 2015.11.24
507.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> xml <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 뺯<EFBFBD> <EBBAAF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е IJ<D0B5> <C4B2> <EFBFBD> ָ<EFBFBD> <D6B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С
2015-11-20 23:29:10 +08:00
506) 2015.11.20
506.1) bugfix: acl_dbuf_pool.c <20> <> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> acl_dbuf_pool_reset ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD>
<EFBFBD> <EFBFBD> ʱӦ<EFBFBD> ñ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> 飬<EFBFBD> <EFBFBD> ƫ<EFBFBD> Ƶ<EFBFBD> ַ<EFBFBD> <EFBFBD> <EFBFBD> ֲ<EFBFBD> <EFBFBD> <EFBFBD>
505) 2015.11.19
505.1) feature & performance: acl_array.c, acl_xml.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_DBUF_POOL<4F> <4C>
<EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
504) 2015.11.18
504.1) bugfix: acl_xml_util.c <20> <> acl_xml_build <20> <> <EFBFBD> <EFBFBD> xml <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> ת<EFBFBD> <D7AA> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD>
504.2) feature: acl_xml_parse.c <20> ڽ<EFBFBD> <DABD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> xml <20> <> <EFBFBD> ݸ<EFBFBD> ʽ <EFBFBD> Ľ<EFBFBD> <C4BD> <EFBFBD>
2015-11-12 16:33:53 +08:00
503) 2015.11.11
503.1) bugfix: acl_json_parse.c <20> <> <EFBFBD> <EFBFBD> -xxx <20> <> +xxx ҲӦʶ<D3A6> <CAB6> Ϊ<EFBFBD> <CEAA> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD>
2015-11-09 22:11:21 +08:00
502) 2015.11.6
502.1) feature: acl_htable.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_htable_delete_entry
501) 2015.11.3
501.1) feature: acl_urlcode.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_DBUF_POOL <20> ڴ<EFBFBD> <DAB4> <EFBFBD>
500) 2015.10.30
500.1) feature: acl_dbuf_pool.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_dbuf_pool_free, acl_dbuf_pool_keep,
acl_dbuf_pool_unkeep <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͬʱ<CDAC> Ż<EFBFBD> acl_dbuf_pool_reset <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> <C4B3> <EFBFBD> ڴ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> б <EFBFBD> ʶΪ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD>
499) 2015.10.29
499.1) feature: acl_dbuf_pool.c <20> е <EFBFBD> acl_dbuf_pool_reset <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> ʱ
֧<EFBFBD> ֱ<EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȵĻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2015-10-20 21:07:23 +08:00
498) 2015.10.7
498.1) bugfix: acl_atoui64/acl_atoi64 <20> <> WINDOWS ƽ ̨ʹ <CCA8> <CAB9> VC2012 <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ⣬
<EFBFBD> <EFBFBD> Ϊ<EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> VC <20> ṩ<EFBFBD> <E1B9A9> API _atoi64 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 64 λ<> <CEBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 18446744073709551615<31> <35>
ʱ<EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <EFBFBD> ضϣ<EFBFBD> <EFBFBD> <EFBFBD> VC2003 ȴû<C8B4> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD>
498.2) <20> <> <EFBFBD> <EFBFBD> acl_mystring.c <20> е Ĵ<D0B5> <C4B4> <EFBFBD>
498.3) feature: json <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˺<EFBFBD> <CBBA> <EFBFBD> acl_json_getFirstElementByTagName<6D> <65> <EFBFBD> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> ƥ<EFBFBD> 䵽һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵĽڵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> أ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> ʱ<EFBFBD> acl_json_getElementsByTagName <20> <> <EFBFBD> <EFBFBD>
498.4) feature: xml <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˺<EFBFBD> <CBBA> <EFBFBD> acl_xml_getFirstElementByTagName<6D> <65> <EFBFBD> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> ƥ<EFBFBD> 䵽һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵĽڵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> أ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> ʱ<EFBFBD> acl_xml_getElementsByTagName <20> <> <EFBFBD> <EFBFBD>
2015-09-27 20:59:21 +08:00
497) 2015.9.23
497.1) feature: json <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͣ<EFBFBD> ͬʱ<CDAC> <CAB1> ȫ֧<C8AB> ֣<EFBFBD> bool, number, null <20> <> <EFBFBD> ͵<EFBFBD> <CDB5> <EFBFBD> <EFBFBD> <EFBFBD>
496) 2015.9.22
496.1) feature: json <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵĹ<CFB5> <C4B9> <EFBFBD>
------------------------------------------------------------------------
2015-08-13 21:38:59 +08:00
495) 2015.8.13
495.1) feature: acl_msg.c <20> ļ<EFBFBD> <C4BC> У <EFBFBD> <D0A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> ־<EFBFBD> <D6BE> Ϣ<EFBFBD> <CFA2> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> У <EFBFBD> ͬʱ<CDAC> ֿ<EFBFBD> <D6BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ļ
2015-07-13 16:28:09 +08:00
494) 2015.7.7
494.1) bugfix: acl_urlcode.c <20> к<EFBFBD> <D0BA> <EFBFBD> acl_url_decode <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 봮<EFBFBD> Ƿ<EFBFBD> ʱ<EFBFBD> п<EFBFBD> <D0BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD>
494.2) samples/dgate: <20> <> ֮ǰд<C7B0> <D0B4> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> DNS <20> <> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӽ<EFBFBD> <D3BC> <EFBFBD>
2015-06-28 20:27:51 +08:00
493) 2015.6.28
493.1) compile: ֧<> <D6A7> <EFBFBD> <EFBFBD> VC x64 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ±<EFBFBD> <C2B1> <EFBFBD> ʹ <EFBFBD> <CAB9>
493.2) workaroud: Ϊ<> ˷<EFBFBD> ֹ<EFBFBD> <D6B9> <EFBFBD> <EFBFBD> acl_define_win32.h <20> н<EFBFBD> FD_SETSIZE <20> <> <EFBFBD> õĹ<C3B5> <C4B9> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ½<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 64λ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¶<EFBFBD> ջ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> Ĭ<EFBFBD> ϶<EFBFBD> ջΪ1MB<4D> <42> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> FD_SETSIZE <20> <> Ϊ 40000
2015-06-24 21:38:28 +08:00
492) 2015.6.24
492.1) bugfix: acl_vstring.c <20> <> acl_vstring_init <20> <> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> ֹʹ <D6B9> <CAB9> <EFBFBD> ڴ<EFBFBD> <DAB4> ط<EFBFBD> ʽ
2015-06-22 17:32:33 +08:00
491) 2015.6.21
491.1) feature: acl_dbuf_pool.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_dbuf_pool_reset <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ڴ<EFBFBD> <EFBFBD> ر<EFBFBD> <EFBFBD> ظ<EFBFBD> ʹ <EFBFBD> <EFBFBD>
491.2) performance: acl_json.c <20> <> acl_json_rest <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> acl_dbuf_pool_reset
<EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> ʹ <EFBFBD> ûỰ<EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD>
2015-06-19 16:08:17 +08:00
490) 2015.6.19
490.1) performance: acl_json.c/acl_vstring.c ֧<> <D6A7> ʹ <EFBFBD> <CAB9> ACL_DBUF_POOL <20> ڴ<EFBFBD> <DAB4> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 䣬<EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2015-06-14 02:47:59 +08:00
489) 2015.6.12
489.1) bugfix: acl_vstream.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> acl_vstream_loadfile2 <20> ڷ<EFBFBD> <DAB7> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> ж<EFBFBD> <D0B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
489.2) compile: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2015-06-03 11:19:13 +08:00
488) 2015.5.25
488.1) performance: acl_dbuf_pool.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> μ<EFBFBD> <CEBC> <EFBFBD>
<EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD>
488.2) performance: acl_vstream.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ż<EFBFBD> <C5BB> <EFBFBD> acl_vstream_read <20> ṩԤ<E1B9A9> <D4A4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
488.3) performance: acl_read_wait.c <20> к<EFBFBD> <D0BA> <EFBFBD> acl_read_wait <20> <> linux <20> ²<EFBFBD> <C2B2> <EFBFBD>
epoll<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2015-04-04 15:25:29 +08:00
487) 2015.4.4
487.1) compile: acl_define_win32.h <20> е <EFBFBD> socklen_t <20> Ķ<EFBFBD> <C4B6> <EFBFBD> ԭ<EFBFBD> <D4AD> ʹ <EFBFBD> ú궨<C3BA> <EAB6A8> #define
<EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> Щ<EFBFBD> 汾<EFBFBD> <EFBFBD> VC <20> ṩ<EFBFBD> ˴ <EFBFBD> <CBB4> <EFBFBD> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD> <EFBFBD> ±<EFBFBD> <C2B1> 뱨<EFBFBD> <EBB1A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڸ<EFBFBD> Ϊ typedef <20> <> <EFBFBD> 巽ʽ
2015-02-10 17:23:24 +08:00
------------------------------------------------------------------------
2015-03-11 09:09:28 +08:00
486) 2015.3.11
486.1) bugfix: <20> <EFBFBD> acl_read_wait.c/acl_write_wait.c<> <63> <20> <> WIN32 ƽ ̨<C6BD> µ<EFBFBD> <C2B5> <EFBFBD>
select ʱ<> <CAB1> <EFBFBD> ؼ<EFBFBD> <D8BC> <EFBFBD> fd <20> <> FD_SETSIZE <20> Ĺ<EFBFBD> ϵ<EFBFBD> <CFB5> <EFBFBD> <EFBFBD> Ϊ WIN32 <20> µ<EFBFBD> fd_set <20> ṹ<EFBFBD> <E1B9B9> <EFBFBD> 弰
FD_XXX <20> <> <EFBFBD> <EFBFBD> ʵ<EFBFBD> <CAB5> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD> UNIX <20> <> ͬ<EFBFBD> <CDAC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32 <20> µ<EFBFBD> fd <20> Dz<EFBFBD> <C7B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> п<EFBFBD> <D0BF> ܻ<EFBFBD> <DCBB> <EFBFBD> <EFBFBD> ַdz<D6B7> <C7B3> <EFBFBD>
<EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> м<EFBFBD> <EFBFBD> <EFBFBD> fd < FD_SETSIZE <20> п<EFBFBD> <D0BF> ܻᵼ<DCBB> ±<EFBFBD> <C2B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵҲ<CAB5> <D2B2> ȫû<C8AB> б <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD>
2015-03-08 21:34:00 +08:00
485) 2015.3.5
485.1) bugfix: acl_threads_server.c/acl_aio_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> Ҫ֪ͨ
acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Լ<EFBFBD> <D4BC> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> ͬʱ<CDAC> <CAB1> Ҫ<EFBFBD> ر<EFBFBD> <D8B1> <EFBFBD> ǰ<EFBFBD> <C7B0> TCP <20> ɷ<EFBFBD> <C9B7> <EFBFBD> (master_dispatch)<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2015-02-27 13:33:00 +08:00
484) 2015.2.26
484.1) feature: acl_msg.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˺<EFBFBD> <CBBA> <EFBFBD> acl_msg_trace_enable <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͵<EFBFBD> <EFBFBD> <EFBFBD> ־ʱ<EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <EFBFBD> ö<EFBFBD> ջ
483) 2015.2.25
483.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> CRC17 <20> Ĺ<EFBFBD> ϣ<EFBFBD> 㷨 acl_hash_crc16
2015-02-14 01:04:37 +08:00
482) 2015.2.14
482.1) bugfix: acl_trace.c/acl_trace_info <20> е ı <D0B5> <C4B1> <EFBFBD> results <20> ڵ<EFBFBD> <DAB5> <EFBFBD> ϵͳ<CFB5> <CDB3>
backtrace_symbols() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> ͷţ<CDB7> <C5A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й©
2015-02-10 17:23:24 +08:00
481) 2015.2.10
481.1) bugfix: acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܵ<EFBFBD> <DCB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master_prefork <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ܻᵼ<DCBB> <E1B5BC>
master_maxproc <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD> master_avail.c <20> е <EFBFBD> master_prefork <20> <> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master_avail_event <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master_prefork <20> <> <EFBFBD> <EFBFBD> 0 ʱ
<EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ fork <20> ӽ<EFBFBD> <D3BD> ̣<EFBFBD> <CCA3> <EFBFBD> BUG <20> <> Ӱ<EFBFBD> <D3B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̷<EFBFBD> <CCB7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> 壬<EFBFBD> <E5A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ģ<EFBFBD> 壨<EFBFBD> 磺<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <20> ȣ <EFBFBD> û<EFBFBD> <C3BB> Ӱ<EFBFBD> <D3B0>
481.2) bugfix: acl_single_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ̷<EFBFBD> <CCB7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> Ŀ<EFBFBD> <C4BF> г <EFBFBD> ʱ<EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> <EFBFBD> ƴ<EFBFBD> <C6B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2015-01-04 22:51:01 +08:00
------------------------------------------------------------------------
2015-02-02 16:50:06 +08:00
480) 2015.2.2
480.1) feature: acl_vstring.c/vstring_extend <20> <> <EFBFBD> ڴ<EFBFBD> <DAB4> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ淭<DAB4> <E6B7AD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԭʼ <EFBFBD> ڴ<EFBFBD> <EFBFBD> Ƚϴ<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɺܴ<EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> ˷ѣ<EFBFBD> <EFBFBD> ֲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> redis-server <20> е IJ<D0B5> <C4B2> ԣ<EFBFBD> <D4A3> <EFBFBD> һ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Χ <EFBFBD> ڣ<EFBFBD> 1MB<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> Χ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1MB Ϊ<> <CEAA> λ<EFBFBD> <CEBB> <EFBFBD> е <EFBFBD> <D0B5> <EFBFBD>
2015-01-27 01:11:04 +08:00
479) 2015.1.27
479.1) bugfix: acl_dbuf_pool.c <20> ĺ<EFBFBD> <C4BA> <EFBFBD> acl_dbuf_pool_alloc() <20> ڱȽ<DAB1> ʣ<EFBFBD> <EFBFBD> <E0B3A4>
<EFBFBD> <EFBFBD> pool->block_size <20> ij<EFBFBD> <C4B3> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <C3B5> <EFBFBD> pool->block_size <20> <> <EFBFBD> ȼ<EFBFBD> ȥһ <C8A5> <D2BB> <EFBFBD> ϴ<EFBFBD> <CFB4> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ȣ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (block_size Ϊ size_t <20> <> <EFBFBD> <EFBFBD> ) <20> <> <EFBFBD> <EFBFBD>
ע<EFBFBD> <EFBFBD> ԭ<EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ﷽ʽ Ϊ<EFBFBD> <EFBFBD>
pool->block_size - ((char*) pool->head->ptr - (char*) pool->head->buf) < length
<EFBFBD> <EFBFBD> ȷ<EFBFBD> ķ<EFBFBD> ʽ Ϊ<EFBFBD> <EFBFBD>
pool->block_size < ((char*) pool->head->ptr - (char*) pool->head->buf) + length
<EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ζ<EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ե<EFBFBD> һ <EFBFBD> ֱ<EFBFBD> <EFBFBD> ﷽ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɱȽϷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߵ <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2015-01-14 23:35:23 +08:00
478) 2015.1.7
478.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_is_blocking() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <D0B6> <EFBFBD> <D7BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ <C4A3> <CABD> <EFBFBD> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ
2015-01-04 22:51:01 +08:00
477) 2015.1.1
477.1) compile: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̿<EFBFBD> <CCBF> <EFBFBD> ʹ <EFBFBD> <CAB9> clang/clang++ <20> <> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
476) 2014.12.28
476.1) feature: win32 iocp ģʽ <C4A3> ¿<EFBFBD> <C2BF> <EFBFBD> ֧<EFBFBD> Ÿ<EFBFBD> <C5B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_events.c <20> е ĺ<D0B5> <C4BA> <EFBFBD>
<EFBFBD> <EFBFBD> acl_event_new_kernel<EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <EFBFBD> <EFBFBD> Ĭ<EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> Ϊ 50000<30> <30> ʹ <EFBFBD> <CAB9> <EFBFBD> ߿<EFBFBD> <DFBF> Ը<EFBFBD> <D4B8> <EFBFBD> <EFBFBD> Լ<EFBFBD> <D4BC> <EFBFBD> Ҫ<EFBFBD> ijɸ<C4B3> <C9B8> <EFBFBD> <EFBFBD> <EFBFBD> ֵ
476.2) bugfix: win32 iocp ģ<> <C4A3> (events_iocp.c)<29> ĺ<EFBFBD> <C4BA> <EFBFBD> stream_on_close <20> У <EFBFBD> Ӧ<EFBFBD> <D3A6>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> fdp->event_read <20> Ƿ<EFBFBD> Ϊ<EFBFBD> <CEAA> ָ<EFBFBD> <D6B8> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD>
2014-11-19 00:25:21 +08:00
------------------------------------------------------------------------
2014-12-14 18:26:52 +08:00
475) 2014.12.13
475) bugfix: acl_json_util.c <20> н<EFBFBD> JSON <20> <> <EFBFBD> <EFBFBD> תΪ<D7AA> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> acl_json_build
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <EFBFBD> ijЩ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
476) featrue: acl_json_util.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <CABD> JSON <20> <> <EFBFBD> <EFBFBD> תΪ<D7AA> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD>
acl_json_building<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> JSON <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ƚϴ<C8BD> ʱʹ <CAB1> øú<C3B8> <C3BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> <D0A7> ֹҪ<D6B9> <D2AA> ϵͳ<CFB5> <CDB3> <EFBFBD> <EFBFBD>
<EFBFBD> dz<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> ռ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ·<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> ʧ<EFBFBD> <EFBFBD>
474) 2014.12.8
474.1) feature: acl_trace.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> acl_trace_info <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> ֹ<EFBFBD> ݹ<EFBFBD> Ƕ<EFBFBD> Ĺ<D7B5> <C4B9> <EFBFBD>
2014-12-07 23:48:11 +08:00
473) 2014.12.6
473.1) feature: acl_msg.c <20> е <EFBFBD> acl_msg_error/warn/fatal/panic ֧<> ּ<EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ö<EFBFBD> ջ
472) 2014.12.5
472.1) feature: acl_vstream.c <20> <> ѭ<EFBFBD> <D1AD> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> (loop_writen)֧<> ֳ<EFBFBD> ʱд<CAB1> <D0B4> <EFBFBD> ܣ<EFBFBD> <DCA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
д<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <EFBFBD> д<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> С <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <EFBFBD> <EFBFBD> ȣ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <EFBFBD> ʱ<EFBFBD> ȴ<EFBFBD> <EFBFBD> <EFBFBD> ͬʱ<EFBFBD> <EFBFBD> ѭ<EFBFBD> <EFBFBD>
д<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 64KB Ϊ<> <CEAA> λд<CEBB> <D0B4> <EFBFBD> <EFBFBD>
472.2) feature: acl_threads_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <D4B6> ˳<EFBFBD> <CBB3> <EFBFBD> <EFBFBD> <EFBFBD>
472.3) feature: acl_threads_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> TCP <20> <> <EFBFBD> ӷַ<D3B7> <D6B7> <EFBFBD> ʽ ʱ<CABD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˻㱨<CBBB> <E3B1A8> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> ֶΣ<EFBFBD> <EFBFBD> Ա<EFBFBD> <EFBFBD> ڷַ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> ֶξ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD>
471) 2014.12.4
471.1) performance: acl_vstream.c <20> Ż<EFBFBD> <C5BB> ˶<EFBFBD> (__sys_read) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
471.2) bugfix: acl_vstream.c <20> <> дʱ<D0B4> п<EFBFBD> <D0BF> ܻ<EFBFBD> <DCBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <D1AD>
470) 2014.12.2
470.1) bugfix: acl_vstream.c <20> к<EFBFBD> <D0BA> <EFBFBD> __sys_read <20> ı <EFBFBD> ־λ sys_read_ready <20> <> 0
Ӧ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> read_fn/fread_fn <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> غ<EFBFBD>
2014-11-30 21:15:35 +08:00
469) 2014.11.30
469.1) bugfix: acl_aio_read.c <20> е <EFBFBD> reactor IO <20> <> ʽ <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> acl_aio_enable_read
<EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> п<EFBFBD> <EFBFBD> ܲ<EFBFBD> <EFBFBD> ᴥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
468) 2014.11.29
468.1) bugfix: acl_sys_socket.c <20> е Ķ<D0B5> /д<> <D0B4> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> timeout <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> <C3A3> <EFBFBD> <EFBFBD> <EFBFBD>
468.2) workaround: acl_vstream.c <20> е <EFBFBD> __sys_read <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> жϽ<D0B6> <CFBD> <EFBFBD> read_fn <20> <> <EFBFBD> <EFBFBD>
467) 2014.11.28
467.1) feature: acl_trace.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_log_strace() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ö<EFBFBD> ջ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־<EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD>
467.2) feature: acl_default_mallo.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_default_set_memlimit,
acl_default_get_memlimit <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> /<2F> <> <EFBFBD> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> ֵ
2014-11-25 19:44:37 +08:00
466) 2014.11.25
466.1) feature: acl_mystring.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_find_blank_line <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӹ<EFBFBD> <D3B8> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> в<EFBFBD> <EFBFBD> ҿ<EFBFBD> <EFBFBD> е <EFBFBD> λ<EFBFBD> <EFBFBD>
466.2) feature: acl_pthread_pool.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_pthread_pool_idle<6C> <65>
acl_pthread_pool_busy <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> ǰ<EFBFBD> ̳߳<DFB3> <CCB3> е Ŀ<D0B5> <C4BF> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> æ<EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD>
466.3) feature: acl_threads_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> 嵱<EFBFBD> ӽ<EFBFBD> <D3BD> <EFBFBD> <EFBFBD> ˳<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ȵ<EFBFBD> <C8B5> <EFBFBD> Ӧ<EFBFBD> <D3A6>
<EFBFBD> ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ûص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ⱦ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> ˳<EFBFBD>
465) 2014.11.23
465.1) bugfix: acl_threads_server.c/acl_aio_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> 壬<EFBFBD> <E5A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> TCP
<EFBFBD> ַ<EFBFBD> <EFBFBD> <EFBFBD> ʽ ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_master reload <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õIJ<C3B5> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> TCP <20> ɷ<EFBFBD> <C9B7> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> ¸ <EFBFBD> <C2B8> ӽ<EFBFBD> <D3BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD>
2014-11-19 00:25:21 +08:00
464) 2014.11.18
464.1) bugfix: snprintf.c <20> <> acl_secure_snprintf/acl_secure_vsnprintf <20> ڵ<EFBFBD> <DAB5> <EFBFBD>
_vsnprintf_s ʱ<> <CAB1> <EFBFBD> <EFBFBD> <F3A3ACB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 贫<EFBFBD> <E8B4AB> _TRUNCATE<54> <45> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <F2B5B1BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С ʱ<D0A1> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
463) 2014.11.10
463.1) bugfix: acl_threads_server.c <20> <> <EFBFBD> Կͻ<D4BF> <CDBB> <EFBFBD> IP <20> <> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> Ȩ<EFBFBD> Ĵ<DEB5> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̷<EFBFBD> <CCB7> <EFBFBD>
client_wakeup <20> У <EFBFBD> <D0A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master_threads2 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> core
463.2) feature: acl_threads_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_MASTER_SERVER_HANDSHAKE_FN
<EFBFBD> ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_MASTER_SERVER_ACCEPT_FN <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> ϳ <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ij<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
462) 2014.11.8
462.1) bugfix: acl_json_util.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> json_escape_append <20> <> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD>
'/' <20> <> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA>
461) 2014.11.7
461.1) feature: json ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˹<EFBFBD> <CBB9> 첼<EFBFBD> <ECB2BC> <EFBFBD> ͺ <EFBFBD> <CDBA> <EFBFBD> ֵ<EFBFBD> ͵Ľӿ<C4BD>
------------------------------------------------------------------------
460) 2014.10.25
460.1) feature: acl_tcp_ctl.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <D7BD> <EFBFBD> ѡ <EFBFBD> <D1A1> <EFBFBD> Ļ<EFBFBD> ȡ<EFBFBD> ½ӿڣ<D3BF> acl_get_tcp_solinger<65> <72>
acl_get_tcp_nodelay
459) 2014.10.24
459.1) bugfix: acl_aqueue.c <20> <> acl_aqueue_free <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> ָ<EFBFBD> <D6B8> ʹ <EFBFBD> <CAB9>
458) 2014.9.9
458.1) feature: acl_threads_server.c <20> ̳߳ط<CCB3> <D8B7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> ֧<EFBFBD> <D6A7> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
(ioctl_thread_accept = 1) <20> <> on_accept <20> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> ̷<EFBFBD> <CCB7> <EFBFBD> <EFBFBD> ̳߳ص<CCB3> <D8B5> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> д<EFBFBD> <D0B4> <EFBFBD>
458.2) feature: <20> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_EVENT_ACCEPT/ACL_EVENT_CONNECT <20> <>
ACL_EVENT_READ/ACL_EVENT_WRITE <20> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
457) 2014.9.6
457.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> ʹ ֮<CAB9> <D6AE> <EFBFBD> 淶
456) 2014.9.2
456.1) acl_master <20> <> <EFBFBD> ̵<EFBFBD> master_spawn.c <20> У <EFBFBD> <D0A3> ں<EFBFBD> <DABA> <EFBFBD> master_delete_child <20> У <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_binhash_find <20> <> <EFBFBD> <EFBFBD> NULL ʱ<> <CAB1> <EFBFBD> Զ<EFBFBD> panic<69> <63> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> ػ<EFBFBD> <D8BB> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> 쳣<EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ָij<EFBFBD> warning
455) 2014.8.27
455.1) feature: acl_vstream.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˼<EFBFBD> <CBBC> <EFBFBD> IO <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> ż<EFBFBD> ¼λ<C2BC> <CEBB>
------------------------------------------------------------------------
454) 2014.8.20
454.1) feature: ACL_VSTREAM <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> objs_table <20> <> Ա<EFBFBD> <D4B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> KEY-OBJECT <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> acl_vstream_add_object/acl_vstream_get_object/acl_vstream_del_object
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
453) 2014.7.31
453.1) compile: <20> <> FreeBSD9.2(64)<29> ϱ <EFBFBD> <CFB1> <EFBFBD> ͨ<EFBFBD> <CDA8>
452) 2014.7.21
452.1) <20> <> master/template/acl_tmpl.c <20> Ƶ<EFBFBD> stdlib/sys/unix/acl_core_limit.c
452.2) bugfix: acl_basename.c <20> е <EFBFBD> acl_safe_basename() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> BUG
451) 2014.7.7
451.1) acl_set_ugid.c/acl_set_eugid.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ̲<EFBFBD> <CCB2> <EFBFBD> <EFBFBD> л<EFBFBD> <D0BB> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> ʱȡ<CAB1> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD>
fatal <20> Ĺ<EFBFBD> <C4B9> ̣<EFBFBD> <CCA3> <EFBFBD> <EFBFBD> Ǹ<EFBFBD> <C7B8> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߷<EFBFBD> <DFB7> <EFBFBD> -1 <20> <> ʾ <EFBFBD> л<EFBFBD> <D0BB> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> <CAA7>
450) 2014.6.26
450.1) feature: acl_vstream.c <20> <> acl_vstream_gets_peek/acl_vstream_gets_nonl_peek
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> г <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƹ<EFBFBD> <EFBFBD> ܣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> buf->maxlen > 0 ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƽ <EFBFBD> <C6BD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> <D0A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ա<EFBFBD> <D4B1> <EFBFBD>
<EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> ر<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݶ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
450.2) feature: acl_aio_read.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݵ<EFBFBD> <DDB5> <EFBFBD> <EFBFBD> <EFBFBD> <F3B3A4B6> <EFBFBD> <EFBFBD> <EFBFBD>
------------------------------------------------------------------------
449) 2014.6.23
449.1) acl_aio_server.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֮ǰ<D6AE> <C7B0> <EFBFBD> ܼ<EFBFBD> <DCBC> <EFBFBD> <EFBFBD> Խӿ<D4BD>
448) 2014.6.20
448.1) acl_aio_server.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IP <20> <> ַ<EFBFBD> <D6B7> <EFBFBD> ƹ<EFBFBD> <C6B9> <EFBFBD>
447) 2014.6.17
447.1) master/template: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> ¸ <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD>
447.2) removed: ȥ<> <C8A5> <EFBFBD> <EFBFBD> acl_aio_app_main.c<> <63> <EFBFBD> <EFBFBD> <EFBFBD> 书<EFBFBD> ܺϲ <DCBA> <CFB2> <EFBFBD> acl_aio_server.c <20> У <EFBFBD>
ȥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_app_main.h ͷ<> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е IJ<D0B5> <C4B2> ִ<EFBFBD> <D6B4> <EFBFBD> <EFBFBD> ϲ <EFBFBD> <CFB2> <EFBFBD> acl_server_api.h <20> <>
446) 2014.6.13
446.1) upgrade: ȥ<> <C8A5> <EFBFBD> <EFBFBD> acl_ioctl_app_main.c<> <63> <EFBFBD> <EFBFBD> ģ<EFBFBD> 齫<EFBFBD> <E9BDAB> acl_threads_server.c
<EFBFBD> <EFBFBD> ȫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
446.2) deprecated: <20> <> acl_ioctl_server.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> Ҳ<EFBFBD> ᱻȥ<E1B1BB> <C8A5> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> е Ĺ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_threads_server.c ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
445) 2014.6.3
445.1) performance: acl_pthread_pool.c, worker_wait() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̳߳<DFB3>
<EFBFBD> ʹ <EFBFBD> <EFBFBD> ̳߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƴ<EFBFBD> <EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> pthread_cond_timedwait <20> ȴ<EFBFBD> ѭ<EFBFBD> <D1AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 棬<EFBFBD> <E6A3AC> <EFBFBD> <EFBFBD> <EFBFBD> ȿ<EFBFBD> <C8BF> Լ<EFBFBD> <D4BC> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> /<2F> Ƴ<EFBFBD> <C6B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> ͬʱ<CDAC> ֿ<EFBFBD> <D6BF> <EFBFBD> ʹ <EFBFBD> ȴ<EFBFBD> <C8B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ̳߳<DFB3> <CCB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD>
444) 2014.5.26
444.1) acl_scan_dir.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˴ <EFBFBD> <CBB4> 룬<EFBFBD> ڷ<EFBFBD> <DAB7> ص<EFBFBD> Ŀ¼<C4BF> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> У <EFBFBD> <D0A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĸ<EFBFBD> <C4B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
'/' <20> <> '\\' (win32)<29> <> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> ȥ<EFBFBD> <C8A5> β<EFBFBD> <CEB2> <EFBFBD> <EFBFBD> Ŀ¼<C4BF> ָ<EFBFBD> <D6B8> <EFBFBD>
443) 2014.5.20
443.1) feature: acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> root <20> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <D0A3> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> (main.cf)<29> <>
<EFBFBD> <EFBFBD> limit_privilege = 0
442) 2014.5.15
442.1) feature: acl_scan_dir.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ӻ<EFBFBD> <D3BA> <EFBFBD> acl_scan_dir_next_name <20> <> <EFBFBD> ḻ<EFBFBD> <E1B8BB> һ Щ<D2BB> ӿڵĹ<DAB5> <C4B9> <EFBFBD>
441) 2014.5.7
441.1) bugfix: acl_vstream.c <20> <> acl_vstream_ftell Ӧ<> ý<EFBFBD> <C3BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <D0B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݼ<EFBFBD> ȥ
441.2) bugfix: acl_aqueue.c <20> <> Ӧ֧<D3A6> <D6A7> <EFBFBD> <EFBFBD> <EFBFBD> ȴ<DEB5> <C8B4> <EFBFBD> ʽ
440) 2014.5.5
440.1) feature: acl_vstream.c/acl_file.c ֧<> <D6A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڱ<EFBFBD> C <20> е <EFBFBD> ftell <20> <> <EFBFBD> ܣ<EFBFBD> <DCA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ǰ<EFBFBD> ļ<EFBFBD> ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> е <EFBFBD> λ<EFBFBD> <EFBFBD>
439) 2014.4.2
439.1) acl_vstream.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <D3B5> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <D0B4> ʱ<EFBFBD> <CAB1> <EFBFBD> ܲ<EFBFBD> <DCB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <C4B9> ϣ<EFBFBD> <CFA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱȥ<CAB1> <C8A5> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> Ϊ<EFBFBD> ڼ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д״̬ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> ϵͳ<EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> Ӱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <EFBFBD> Ч<EFBFBD> <EFBFBD>
438) 2014.4.1
438.1) bugfix: acl_vstream.c <20> е <EFBFBD> <D0B5> <EFBFBD> __vstream_write дʱԭ<CAB1> <D4AD> û<EFBFBD> г <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ƣ<EFBFBD> <C6A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͻȻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܻ<EFBFBD> ʹ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߶<EFBFBD> <EFBFBD> <EFBFBD>
437) 2014.3.27
437.1) bugfix: acl_ioctl_server.c <20> е <EFBFBD> <D0B5> <EFBFBD> acl_event_set_check_inter ʱӦ<CAB1> <D3A6> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD>
acl_ioctl_start ֮<> <EFBFBD> <F3A3ACB7> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ ACL_EVENT <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֿ<EFBFBD> ָ<EFBFBD> <D6B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
437.2) feature: acl_aio_server.c ֧<> <D6A7> <EFBFBD> <EFBFBD> master_dispatch <20> <> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> ϣ<EFBFBD> <CFA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> master_dispatch ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 㱨<EFBFBD> <E3B1A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
437.3) bugfix: acl_transfer_fd.c <20> У <EFBFBD> <D0A3> <EFBFBD> control_un <20> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ں<EFBFBD> <DABA> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ̲߳<EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> <EFBFBD>
437.4) compile: acl_transfer_fd.c <20> <> *((int *) CMSG_DATA(cmptr)) = send_fd; <20> <> <EFBFBD> <EFBFBD>
<EFBFBD> ÷<EFBFBD> <EFBFBD> ڸ߰汾 gcc (<28> <> <EFBFBD> <EFBFBD> -O2 <20> <> <EFBFBD> Ͽ<EFBFBD> <CFBF> أ<EFBFBD> ͬʱδʹ <CEB4> <CAB9> -fno-strict-aliasing) <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> ᱨ
<EFBFBD> <EFBFBD> <EFBFBD> 棬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˾<EFBFBD> <EFBFBD> <EFBFBD>
436) 2014.3.26
436.1) bugfix: acl_vstream_net.c <20> <> acl_vstream_accept_ex <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ж<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
436.2) bugfix: acl_getpeername <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͻ<EFBFBD> <CDBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <D3B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <D7BD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> ԣ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǵ<EFBFBD> <EFBFBD> ж<EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֺ<EFBFBD> <EFBFBD> ٵ<EFBFBD> <EFBFBD> <EFBFBD> acl_getsockname ȡ<> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <D7BD> ּ<EFBFBD> <D6BC> <EFBFBD> ·<EFBFBD> <C2B7>
436.3) bugfix: acl_transfer_fd.c <20> <> acl_read_fd() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڶ<EFBFBD> ȡ fd ʱӦ<CAB1> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> ±<EFBFBD> ʾ <EFBFBD> <CABE>
*recv_fd = *((int *) CMSG_DATA(cmptr)); <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> *recv_fd = *CMSG_DATA(cmptr);
436.4) feature: acl_threads_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> ֧<EFBFBD> ִ<EFBFBD> <D6B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɷ<EFBFBD> <C9B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ͻ<EFBFBD> <EFBFBD> ˵<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӣ<EFBFBD> Ӧ<EFBFBD> <EFBFBD> ֻ<EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ioctl_dispatch_addr = xxx <20> <> <EFBFBD> <EFBFBD>
436.5) app: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> app/master_dispatch <20> <EFBFBD> <D7BD> ֽ<EFBFBD> <D6BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɷ<EFBFBD> <C9B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
435) 2014.3.24
435.1) bugfix: acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> reload <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> ʱ<EFBFBD> п<EFBFBD> <D0BF> ܻᵼ<DCBB> ²<EFBFBD> <C2B2> <EFBFBD> core
<EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> ԭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_master_spawn <20> <> <EFBFBD> жϽ<D0B6> <CFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> Ӳ<EFBFBD> <D3B2> <EFBFBD> core<72> <65> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> Ե<EFBFBD> <EFBFBD> <EFBFBD> Ҫԭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master_conf.c <20> <> reload <20> <> <EFBFBD> <EFBFBD> ʱԤ<CAB1> <D4A4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƴ<EFBFBD> <C6B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǣ<EFBFBD>
a) <20> <> acl_master_spawn <20> н<EFBFBD> <D0BD> <EFBFBD> warning <20> <> Ϣ<EFBFBD> <CFA2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> core
b) ȥ<> <C8A5> master_conf.c <20> <> acl_master_avail_reset <20> <> <EFBFBD> <EFBFBD>
c) <20> <> master_avail.c <20> е <EFBFBD> acl_master_avail_listen <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> <C7B7> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <EFBFBD> <EFBFBD>
434) 2014.3.21
434.1) feature: acl_threads_server.c <20> <> <EFBFBD> м<EFBFBD> <D0BC> <EFBFBD> <EFBFBD> ڹر<DAB9> <D8B1> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> رյĻص<C4BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD>
433) 2014.3.20
433.1) bugfix: events_epoll_thr.c <20> ں<EFBFBD> <DABA> <EFBFBD> event_disable_readwrite <20> е <EFBFBD> <D0B5> <EFBFBD>
epoll_ctl ɾ<> <C9BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> Ҳ<EFBFBD> <D2B2> <EFBFBD> 뱣֤<EBB1A3> <D6A4> <EFBFBD> ĸ<EFBFBD> <C4B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> struct epoll_event*) <20> ǿգ <C7BF> <D5A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵͰ<DAB5>
<EFBFBD> <EFBFBD> LINUX <20> »<EFBFBD> <C2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
432) 2014.3.18
432.1) bugfix: events_pool_thr.c Ӧ<> ð<EFBFBD> acl_fdmap_add/acl_fdmap_del/acl_fdmap_ctx
<EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD>
431) 2014.2.27
431.1) workaround: event <20> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> Ϊ<EFBFBD> ˷<EFBFBD> ֹ<EFBFBD> <D6B9> 64λ<34> <CEBB> <EFBFBD> <EFBFBD> ת32λ<32> <CEBB> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD> <EFBFBD> ָ<EFBFBD> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ȫ<EFBFBD> ж<EFBFBD>
430) 2014.2.26
430.1) performance: events.h <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> ʽ <EFBFBD> رգ <D8B1> <D5A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 32λ<32> <CEBB> <EFBFBD> <EFBFBD> <EFBFBD> ϻ<EFBFBD> <CFBB> <EFBFBD> <EFBFBD> <EFBFBD> CPU
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
429) 2014.2.24
429.1) bugfix: events_epoll_thr.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> л<EFBFBD> <D0BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ü<EFBFBD> <C3BC> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1>
Ϊ<EFBFBD> ˷<EFBFBD> ֹ<EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̵߳ĺ<EFBFBD> <EFBFBD> <EFBFBD> event_enable_read <20> <> <EFBFBD> <EFBFBD> fdtabs <20> ͵<EFBFBD> <CDB5> <EFBFBD>
epoll_ctl/EPOLL_CTL_ADD ֮<> <D6AE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> event_disable_readwrite <20> е <EFBFBD>
epoll_ctl/EPOLL_CTL_DEL <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> event_enable_read <20> <> <EFBFBD> ִ<EFBFBD> <D6B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> λ<EFBFBD> <CEBB>
------------------------------------------------------------------------
428) 2014.2.22
428.1) bugfix: events_iocp.c <20> ر<EFBFBD> δ<EFBFBD> <CEB4> ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> ɶ˿<C9B6> <CBBF> <EFBFBD> WIN XP <20> ´ <EFBFBD> <C2B4> <EFBFBD> BUG<55> <47> Ӧ<EFBFBD> <D3A6>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֹر<EFBFBD> ǰ<EFBFBD> <EFBFBD> ȡ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɶ˿<EFBFBD> ״̬
427) 2014.2.21
427.1) bugfix: events_wmsg.c <20> <> <EFBFBD> ڻص<DABB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> н<EFBFBD> stream <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Դ<EFBFBD> <D4B4> ݣ<EFBFBD> <DDA3> <EFBFBD> <EFBFBD> <EFBFBD> Ӱ<EFBFBD> <D3B0>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> win32 <20> <> Ϣ<EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> 첽 IO <20> <> <EFBFBD> <EFBFBD>
427.2) bugfix: events_iocp.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ر<EFBFBD> <D8B1> <EFBFBD> <EFBFBD> ɶ˿<C9B6> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <CEB4> ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> ǰ<EFBFBD> ͷ<EFBFBD>
<EFBFBD> ص<EFBFBD> <EFBFBD> ṹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (http://support.microsoft.com/kb/192800/zh-cn)
427.3) bugfix: acl_pthread_pool.c <20> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <D6B8> Խ<EFBFBD> <D4BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
------------------------------------------------------------------------
426) 2014.2.17
426.1) feature: acl_event.c <20> <> <EFBFBD> Ӻ<EFBFBD> <D3BA> <EFBFBD> acl_event_set_check_inter<65> <72> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> ѭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̽<EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ּ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
425) 2014.2.14
425.1) performance: acl_pthread_pool.c<> <63> <EFBFBD> <EFBFBD> pthread_cond_signal <20> <> <EFBFBD> <EFBFBD>
pthread_mutex_unlock ֮<> Ӷ<F3A3ACB4> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̵߳ȴ<CCB5> <C8B4> <EFBFBD> <EFBFBD> <EFBFBD> <F1B1BBB4> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> (Ϊ<> ˷<EFBFBD> ֹ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> ͷţ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̳߳ض<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> ֻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ø<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
424) 2014.2.8
424.1) feature: acl_pthread_pool.c<> <63> <EFBFBD> <EFBFBD> <EFBFBD> ̳߳<DFB3> <CCB3> е <EFBFBD> <D0B5> ̳߳<DFB3> ʱ<EFBFBD> ȴ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> и<EFBFBD> <D0B8> <EFBFBD> <EFBFBD> <EFBFBD>
1 <20> <> Ϊ<EFBFBD> <CEAA> λ<EFBFBD> <CEBB> ʱ<EFBFBD> <CAB1> Ƭ
423) 2014.2.6
423.1) feature: <20> <> <EFBFBD> <EFBFBD> gcc <20> <> vc <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Կ<EFBFBD> <D4BF> <EFBFBD>
422) 2014.2.3
422.1) performance: events_kernel_thr.c <20> ڵ<EFBFBD> <DAB5> <EFBFBD> event_loop ѭ<> <D1AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <D0B5> <EFBFBD>
event_thr_prepare ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˼<EFBFBD> <CBBC> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڸ߲<DAB8> <DFB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¿<EFBFBD> <C2BF> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> ؼ<EFBFBD> <D8BC> <EFBFBD>
CPU <20> <> ѭ<EFBFBD> <D1AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
422.2) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> events_epoll_thr.c<> <63> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> epoll <20> ĵ<EFBFBD> <C4B5> ÷<EFBFBD> ʽ <EFBFBD> <CABD>
events_kernel_thr.c <20> а <EFBFBD> <D0B0> 룬<EFBFBD> Ա<EFBFBD> <D4B1> <EFBFBD> ר<EFBFBD> <D7A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> epoll <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> Ż<EFBFBD>
421) 2014.1.25
421.1) workaround: ȥ<> <C8A5> <EFBFBD> <EFBFBD> acl_threads_server.c, acl_ioctl_server.c,
acl_aio_server.c, acl_udp_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> õļ<C3B5> <C4BC> ӹ<EFBFBD> (watchdog) <20> <> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
420) 2014.1.24
420.1) performance: acl_pthread_pool.c <20> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> Ѿ<EFBFBD> <D1BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
419) 2014.1.23
419.1) performance: acl_pthread_pool.c <20> ̳߳<DFB3> <CCB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƚ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̣߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳̾<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĸ<EFBFBD> <EFBFBD> <EFBFBD>
418) 2014.1.22
418.1) performance: acl_pthread_pool.c <20> ̳߳<DFB3> <CCB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <C3BF> <EFBFBD> ߳<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> ֮<EFBFBD> <EFBFBD> <EFBFBD> ľ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̳߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
417) 2014.1.20
417.1) workaround: ACL_DEF_THREADS_BATADD(acl_threads_params.h) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD>
1 <20> <> Ϊ 0<> <30> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> µ<EFBFBD> <C2B5> ̳߳ؿ<CCB3> <D8BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> ȱʡ<C8B1> <CAA1> <EFBFBD> <EFBFBD> <EFBFBD> £<EFBFBD> <C2A3> ̳߳ط<CCB3> <D8B7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> 岻<EFBFBD> <E5B2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ )
416) 2014.1.19
416.1) performance: acl_pthread_pool.c<> <63> <EFBFBD> <EFBFBD> ԭ<EFBFBD> <D4AD> <EFBFBD> ̳߳<DFB3> ͳһ <CDB3> <D2BB> һ <EFBFBD> <D2BB> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
Ϊÿ<EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> ֮<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ̳߳ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
------------------------------------------------------------------------
415) 2014.1.11
415.1) compile: ȥ<> <C8A5> <EFBFBD> <EFBFBD> ACL_MS_WINDOWS <20> 궨<EFBFBD> 壬<EFBFBD> <E5A3AC> WINDOWS<57> <53> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͳһ ʹ <D2BB> <CAB9> WIN32
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʶ VC <20> <> <EFBFBD> 뻷<EFBFBD> <EBBBB7>
415.2) compile: ֧<> <D6A7> vc2008 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
414) 2014.1.7
414.1) bugfix: <20> ̳߳ط<CCB3> <D8B7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> (acl_threads_server.c) Ӧ<> <D3A6> <EFBFBD> <EFBFBD> acl_chroot_uid
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֮<EFBFBD> <EFBFBD> <EFBFBD> ٵ<EFBFBD> <EFBFBD> <EFBFBD> set_core_limit<69> <74> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ Ӧ<CAB9> ó<EFBFBD> <C3B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> core <20> ļ<EFBFBD>
413) 2013.1.6
413.1) bugfix: <20> <> <EFBFBD> ̳߳ط<CCB3> <D8B7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> (acl_threads_server.c) <20> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> pre_jail ǰ<> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> pre_jail <20> ص<EFBFBD> <D8B5> л<EFBFBD> <D0BB> õ<EFBFBD> <C3B5> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA>
413.2) feature: <20> <> <EFBFBD> ̳߳ط<CCB3> <D8B7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> pre_jail ǰʹ <C7B0> <CAB9> acl_master <20> <> <EFBFBD> <EFBFBD> ־<EFBFBD> <D6BE> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ֵĴ<EFBFBD> <EFBFBD> <EFBFBD>
412) 2013.12.31
412.1) bugfix: <20> <EFBFBD> <DEB8> <EFBFBD> һ Щ json <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> bug
411) 2013.12.30
411.1) compatibility: json ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> ϵĽ<CFB5> <C4BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˼<EFBFBD> <CBBC> <EFBFBD>
410) 2013.12.29
410.1) feature: <20> <> json <20> 淶(www.json.org)<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> json <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ͬʱ<EFBFBD> ṩ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> в<EFBFBD> <EFBFBD> <EFBFBD>
409) 2013.12.25-27
409.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> json <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ṩ<EFBFBD> ˸ <EFBFBD> <CBB8> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <C4B9> <EFBFBD> (<28> 磺<EFBFBD> <E7A3BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡij<C8A1> <C4B3>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǩ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> json <20> ַ<EFBFBD> <D6B7> <EFBFBD> )
408) 2013.12.15
408.1) feature: acl_threads_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <C3BF> Ʋ<EFBFBD> <C6B2> <EFBFBD> ioctl_batadd,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ
407) 2013.12.13
407.1) feature: acl_pthread_pool.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_pthread_pool_alloc_job,
acl_pthread_pool_free_job, acl_pthread_pool_add_job(<28> µ<EFBFBD> <C2B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> Ľӿ<EFBFBD> )
407.2) feature: acl_threads_server.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <D3B5> ̳߳ط<CCB3> <D8B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD>
407.3) feature: event.c, acl_events.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɷ<EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> ɷ<EFBFBD> <C9B7> <EFBFBD> <EFBFBD> Ļص<C4BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD>
------------------------------------------------------------------------
406) 2013.12.5
406.1) feature: Makefile ֧<> <D6A7> solaris <20> <> <EFBFBD> <EFBFBD>
405) 2013.12.4
405.1) remove: ȥ<> <C8A5> <EFBFBD> <EFBFBD> event Ŀ¼<C4BF> µ<EFBFBD> events_kernel2.c <20> <> events_kernel3.c
404) 2013.11.26
404.1) feature: acl_json.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_json_node_duplicate <20> <> <EFBFBD> ڸ<EFBFBD> <DAB8> <EFBFBD> һ <EFBFBD> <D2BB> JSON
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> JSON <20> <> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <D0A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_json_create <20> <> <EFBFBD> ڸ<EFBFBD> <DAB8> <EFBFBD> һ <EFBFBD> <D2BB> JSON <20> <> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> <EFBFBD> JSON <20> <> <EFBFBD> <EFBFBD>
404.2) feature: acl_json_util.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_json_node_build <20> <> <EFBFBD> ڸ<EFBFBD> <DAB8> <EFBFBD> һ <EFBFBD> <D2BB> JSON
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> JSON <20> ַ<EFBFBD> <D6B7> <EFBFBD>
403) 2013.11.25
403.1) bugfix: acl_json_parse.c<> <63> json_val() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <E2B4A6>
402) 2013.11.17
402.1) performance: acl_vstream.c<> <63> __sys_read <20> <> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> <EFBFBD> sys_read_ready
Ϊ 1 ʱ<> <CAB1> <EFBFBD> <EFBFBD> <F2B2BBBB> <EFBFBD> <EFBFBD> <EFBFBD> ϵͳ API select <20> жϳ <D0B6> ʱ<EFBFBD> <CAB1> <EFBFBD> ̣<EFBFBD> <CCA3> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> ϵͳ<CFB5> <CDB3> <EFBFBD> ã<EFBFBD>
<EFBFBD> <EFBFBD> Ϊ sys_read_ready <20> <> ־λ<D6BE> <CEBB> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> ģ<EFBFBD> <C4A3> (event_xxx) <20> б <EFBFBD> <D0B1> <EFBFBD> <EFBFBD> <EFBFBD>
402.2) performance: acl_aio_server.c, acl_ioctl_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> μ<EFBFBD> <CEBC> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> Ʋ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master_status_notify<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> ò<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD>
acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ̻㱨<CCBB> ӽ<EFBFBD> <D3BD> ̵<EFBFBD> ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD> master_prefork Ԥ<> <D4A4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҹ<EFBFBD>
ֵ > 1 ʱ<> <CAB1> <EFBFBD> <EFBFBD> master_status_notify <20> <> <EFBFBD> <EFBFBD> Ϊ 0<> <30> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> ̲<EFBFBD> <CCB2> <EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> <>
<EFBFBD> <EFBFBD> <EFBFBD> ̻㱨״̬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڼ<EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ̵ĸ<CCB5> <C4B8> <EFBFBD>
402.3) performance: acl_vstream.c, <20> <> acl_vstream_readn <20> У <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> read
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 뻺<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˫<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ
401) 2013.11.7
401.1) bugfix: acl_vstream.c<> <63> <EFBFBD> <EFBFBD> acl_vstream_ctl <20> <> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <D0A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ʋ<EFBFBD> <C6B2> <EFBFBD> Ϊ
ACL_VSTREAM_CTL_PATH ʱ<> <CAB1> <EFBFBD> <EFBFBD> stream->addr_peer <20> ĸ<EFBFBD> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD> <EFBFBD> ⣨<EFBFBD> <E2A3A8> bug <20> ɸ<EFBFBD>
<EFBFBD> 汾<EFBFBD> <EFBFBD> gcc4.8.2 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
400) 2013.11.6
400.1) compile: acl_msg.c<> <63> <EFBFBD> ں<EFBFBD> <DABA> <EFBFBD> acl_last_serror() <20> з<EFBFBD> <D0B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷţ<EFBFBD> <EFBFBD> ᵼ<EFBFBD> <EFBFBD> valgrind <20> <> <EFBFBD> <EFBFBD>
------------------------------------------------------------------------
399) 2013.11.5
399.1) bugfix: events.c<> <63> event_thr_fire() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> disable_readwrite_fn
<EFBFBD> <EFBFBD> fdp->stream = NULL<4C> <4C> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ<EFBFBD> <D6B5> events_dog.c <20> б <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> ɴ<EFBFBD> <C9B4> <EFBFBD>
398) 2013.11.3
398.1) acl_debug.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˲<EFBFBD> <CBB2> <EFBFBD> <EFBFBD> ı <EFBFBD> ʾ <EFBFBD> <CABE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <C4B5> Ա<EFBFBD> ǩ<EFBFBD> <C7A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ʽ : 1:1, 2:10, 3:8... or 1:1; 2:10; 3:8...
397) 2013.11.2
397.1) feature: acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master_debug <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EEA3AC> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD>
<EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> acl <20> ķ<EFBFBD> <C4B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־
396) 2013.10.29
396.1) bugfix: acl_xml_util.c, acl_xml_tag_add() <20> ڵ<EFBFBD> <DAB5> <EFBFBD> acl_token_tree_add
ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> õ<EFBFBD> <EFBFBD> <EFBFBD> ACL_TOKEN_F_STOP<4F> <50> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD> ACL_TOKEN_F_PASS
395) 2013.10.20
395.1) compile: acl_aio_app_main.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> write ʱ<> <CAB1> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> жϷ<D0B6> <CFB7> <EFBFBD> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ڸ߰汾 gcc <20> ϱ <EFBFBD> <CFB1> <EFBFBD> <EFBFBD> <EFBFBD>
394) 2013.10.17
394.1) bugfix: acl_mylog.c, <20> <> ͨ<EFBFBD> <CDA8> UDP <20> <> ʽ <EFBFBD> <CABD> ¼<EFBFBD> <C2BC> ־ʱ<D6BE> <CAB1> <EFBFBD> <EFBFBD> Ϊ֮ǰ acl_vstream.c
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ע<EFBFBD> <EFBFBD> <EFBFBD> ⲿ<EFBFBD> ӿڵĸı <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˲<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
393) 2013.10.15
393.1) feature: acl_aio_app_main.c/acl_ioctl_app_main.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
master_deny_banner <20> <> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> ܾ<EFBFBD> <DCBE> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <D3B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ
392) 2013.10.12
392.1) feature: acl_pthread_pool.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_pthread_pool_qlen <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ṩ
<EFBFBD> <EFBFBD> ǰ<EFBFBD> ̳߳ض<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
391) 2013.10.7
391.1) performance: acl_vstream.c<> <63> <EFBFBD> <EFBFBD> __vstream_sys_read <20> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> ̽<EFBFBD> <CCBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> Ż<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ __sys_read<61> <64> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ļ<EFBFBD> <C4BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊϵͳ read <20> <> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> ַ<EFBFBD> <D6B7>
<EFBFBD> Ӷ<EFBFBD> <EFBFBD> ڵ<EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_readn/acl_vstream_read ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݵĶ<DDB5> <C4B6> ο <EFBFBD> <CEBF> <EFBFBD>
------------------------------------------------------------------------
390) 2013.10.1
390.1) <20> <> master ģ<> <C4A3> <EFBFBD> µ<EFBFBD> Դ<EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ű<EFBFBD> <C5B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB>
390.2) bugfix: events_select.c/events_select_thr.c <20> <> <EFBFBD> <EFBFBD> <D7BD> ּ<EFBFBD> <D6BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> ʱ
<EFBFBD> <EFBFBD> <EFBFBD> ߵ <EFBFBD> ʱ<EFBFBD> 䵥λΪ<EFBFBD> 룬<EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> 뼶<EFBFBD> <EFBFBD> delay תΪ<D7AA> 뼶
389) 2013.9.30
389.1) feature: acl_single_server.c, acl_ioctl_server.c, acl_aio_server.c
acl_udp_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˿<EFBFBD> <CBBF> Ի<EFBFBD> <D4BB> ñ<EFBFBD> <C3B1> ؼ<EFBFBD> <D8BC> <EFBFBD> <EFBFBD> ӿ<D7BD> <D3BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵĺ<CFB5> <C4BA> <EFBFBD>
388) 2013.9.27
388.1) events: ACL_EVENT_NOTIFY_RDWR/ACL_EVENT_NOTIFY_TIME <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӿ<EFBFBD> <D3BF> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ¶<EFBFBD> <EFBFBD> 壬<EFBFBD> ڻص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_EVENT<4E> <54> ACL_VSTREAM <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD>
ֱ<EFBFBD> <EFBFBD> ʹ <EFBFBD> ã<EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿڵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¶<EFBFBD> <EFBFBD> 壬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˺ܶ<EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> Ҫ
Ӱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> event, master, aio, ioctl
387) 2013.9.26
387.1) feature: master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ר<EFBFBD> <D7A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> UDP <20> ķ<EFBFBD> <C4B7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3>
acl_udp_server.c/acl_udp_params.h
386) 2013.9.22
386.1) feature: ACL_VSTREAM ֧<> <D6A7> UDP <20> <> <EFBFBD> <EFBFBD> ; acl_vstream_net.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
acl_vstream_bind <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> UDP <20> <> <EFBFBD> <EFBFBD> ģʽ
386.2) feature: ACL_VSTREAM <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_set_local_addr,
acl_vstream_set_peer_addr
386.3) acl_vstream.c: acl_vstream_set_remote <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ acl_vstream_set_peer
385) 2013.9.21
385.1) <20> Ż<EFBFBD> : ACL_VSTREAM <20> н<EFBFBD> remote_addr, local_addr <20> <> <EFBFBD> <EFBFBD> Ϊָ<CEAA> 룬<EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTREAM <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> ijߴ <C4B3> <DFB4> <EFBFBD> С
385.2) feature: ACL_VSTREAM <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> struct sockaddr_in <20> <> <EFBFBD> ͵<EFBFBD> <CDB5> <EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> 룬<EFBFBD> Ա<EFBFBD>
<EFBFBD> ڽ<EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTREAM <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> UDP <20> <> <EFBFBD> <EFBFBD>
385.3) feature: ACL_VSTREAM <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_set_local,
acl_vstream_set_remote, acl_vstream_set_path <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
384) 2013.9.13
384.1) compile: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˹<EFBFBD> <CBB9> <EFBFBD> <EFBFBD> ļ<EFBFBD> Makefile.db<64> <62> ʹ <EFBFBD> øù<C3B8> <C3B9> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> 룬<EFBFBD> <EBA3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9>
mysql <20> <> <EFBFBD> ݿ<DDBF> ܣ<EFBFBD> ʹ <EFBFBD> <CAB9> Makefile <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> 룬<EFBFBD> <EBA3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> lib_acl.a <20> <> Ϊ<EFBFBD> ɾ<EFBFBD>
(<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> κε<CEBA> <CEB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
383) 2013.8.21
383.1) feature: master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> root <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> acl_master <20> <>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> main.cf<63> <66> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> set_ugid = 0<> <30> Ĭ<EFBFBD> <C4AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¸ <EFBFBD> ֵΪ 1
382) 2013.8.20
382.1) bugfix: acl_json_util.c::json_escape_append, acl_json_parse::json_tag
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> 崦<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŀǰ<EFBFBD> ڽ<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> ݲ<EFBFBD> ֧<EFBFBD> <EFBFBD> \u <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
381) 2013.8.19
381.1) bugfix: acl_json_util.c::json_escape_append <20> в<EFBFBD> Ӧ<EFBFBD> <D3A6> "{}[]" <20> <> Щ<EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> Ϊ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <EFBFBD>
380) 2013.8.14
380.1) event: events_select/events_poll/events_kernel/events_iocp ʹ <> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ʱ<EFBFBD> Ӹ<EFBFBD> Ϊ<EFBFBD> <EFBFBD> ȷ
379) 2013.8.7
379.1) bugfix: <20> <> iocp <20> <> ʽ <EFBFBD> ²<EFBFBD> <C2B2> <EFBFBD> ͨ<EFBFBD> <CDA8> getpeername/getsockname <20> <> <EFBFBD> <EFBFBD>
Զ<EFBFBD> <EFBFBD> /<2F> <> <EFBFBD> صĵ<D8B5> ַ<EFBFBD> <D6B7> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> acl_vstream_accept_ex <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> setsockopt <20> <> <EFBFBD> ã<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> һ Щ<EFBFBD> <EFBFBD> <EFBFBD> Կ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> н<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˴ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
378) 2013.7.23
378.1) feature: acl_aio_server.c, aio_accept_timer <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> ò<EFBFBD> <C3B2> <EFBFBD> <EFBFBD> <EFBFBD>
aio_accept_timer<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ > 0 ʱ<> <CAB1> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> Խ<EFBFBD> <D4BD> տͻ<D5BF>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӣ<EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> ﵽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȵ<EFBFBD> Ŀ<EFBFBD> <EFBFBD>
377) 2013.7.18
377.1) performance: event/event_kernel_thr.c, <20> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> ̷߳<DFB3> ʽ <EFBFBD> <CABD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ٶȣ <EFBFBD> acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <D0A3> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> ѡ <EFBFBD> <D1A1> kernel <20> <> ʽ ʱ<CABD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD>
ioctl_enable_dog ѡ <> <D1A1>
377.2) compile: linux32 gcc4 <20> <> <EFBFBD> <EFBFBD> <F2BFAAB1> <EFBFBD> ѡ <EFBFBD> <D1A1> strict-aliasing rules ʱ<> <CAB1>
acl_sane_socket.c <20> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> SOCK_ADDR <20> <> <EFBFBD> ͱ<EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> ᱨ<EFBFBD> <E1B1A8> <EFBFBD> <EFBFBD>
376) 2013.7.15
376.1) lib_acl: ȥ<> <C8A5> <EFBFBD> <EFBFBD> svr ģ<> 飬<EFBFBD> <E9A3AC> ģ<EFBFBD> <C4A3> <EFBFBD> Ĺ<EFBFBD> <C4B9> <EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> <C8AB> thread/ <20> µ<EFBFBD> <C2B5> ̳߳<DFB3> ģ<EFBFBD> <C4A3>
(acl_pthread_pool_xxx) <20> <> <EFBFBD> 棻ͬʱ<CDAC> <EFBFBD> <DEB8> <EFBFBD> ioctl/ ģ<> <C4A3> <EFBFBD> ж<EFBFBD> <D0B6> <EFBFBD> svn ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> 滻Ϊ threead/ <20> µ<EFBFBD> <C2B5> ̳߳<DFB3> ģ<EFBFBD> <C4A3>
375) 2013.7.11
375.1) feature: acl_sane_socket.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_getsocktype <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ի<EFBFBD> <D4BB> õ<EFBFBD> ǰ
socket <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> TCP <20> ӿڻ<D3BF> <DABB> <EFBFBD> UNIX <20> <> <EFBFBD> ӿ<D7BD> ;
acl_getsockname/acl_getpeername ֧<> <D6A7> UNIX <20> <> <EFBFBD> ӿ<D7BD>
375.2) feature: acl_sane_accept.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_accept <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȽϷ<C8BD> <CFB7> <EFBFBD> <EFBFBD> ؽ<EFBFBD> <D8BD> տͻ<D5BF>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӣ<EFBFBD> ͬʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> TCP <20> ӿڼ<D3BF> UNIX <20> <> <EFBFBD> ӿ<D7BD>
375.3) master/template: <20> <> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_aio_server.c, acl_ioctl_server.c,
acl_single_server.c acl_multi_server.c, <20> ڲ<EFBFBD> ͳһ <CDB3> <D2BB> Ϊ acl_accept <20> <> ʽ
374) 2013.7.7
374.1) bugfix: acl_vstream.h, <20> <> Ϊ ACL_VSTREAM <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> wbuf <20> <> ȡ<EFBFBD> <C8A1>
дʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> <EFBFBD> ԣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ի<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɺ<EFBFBD> ACL_VSTREAM_PUTC <20> Ŀ<EFBFBD> ָ<EFBFBD> <D6B8> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD>
<EFBFBD> <EFBFBD> Ԥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> wbuf <20> ռ <EFBFBD>
374.2) master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܣ<EFBFBD> <DCA3> <EFBFBD> Ϊ֧<CEAA> <D6A7> ͬһ <CDAC> <D2BB> <EFBFBD> <EFBFBD> ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> TCP <20> <> UNIX
<EFBFBD> <EFBFBD> <EFBFBD> ӿڻ<EFBFBD> <EFBFBD> ã<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŀǰ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Դ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĭ<EFBFBD> ϵ<EFBFBD> <EFBFBD> <EFBFBD> UNIX <20> <> <EFBFBD> ӿڵ<D3BF>
accept <20> <> <EFBFBD> <EFBFBD>
373) 2013.6.25
373.1) compile: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> gcc-4.6.3 <20> µ<EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> 뾯<EFBFBD> <EBBEAF>
372) 2013.6.21
372.1) feature: acl_master <20> <> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> м<EFBFBD> <D0BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ(<28> <> <EFBFBD> <EFBFBD> Ϊ TCP
<EFBFBD> ӿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿڻ<EFBFBD> <EFBFBD> <EFBFBD> )
371) 2013.6.21
371.1) feature: acl_master <20> <> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> <EFBFBD> reload ʱ<> <CAB1> prefork<72> <6B> <EFBFBD> ĵ<DEB8> <C4B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> У <EFBFBD>
master_avail.c, master_service.c, master_spawn.c, master.h
371.2) acl_master_log.c: <20> <> <EFBFBD> <EFBFBD> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <CFA2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ״̬<D7B4> Դ<EFBFBD>
370) 2013.6.15
370.1) bugfix: acl_array.c->acl_array_prepend<6E> <64> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <D0B5> õ<EFBFBD> acl_array_succ_insert<72> <74>
Ӧ<EFBFBD> õ<EFBFBD> <EFBFBD> <EFBFBD> acl_array_pred_insert<72> <74> <EFBFBD> <EFBFBD> BUG <20> <> Ӱ<EFBFBD> 쵽<EFBFBD> <ECB5BD> <EFBFBD> е <EFBFBD> <D0B5> <EFBFBD> acl_dlink, acl_iplink,
acl_access <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ĵط<C4B5> <D8B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_aio_app_main.c/acl_ioctl_app_main.c <20> <> <EFBFBD> йط<D0B9> <D8B7> <EFBFBD>
Ȩ<EFBFBD> ĵط<EFBFBD>
370.2) <20> <> acl_iplink.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӳ<EFBFBD> <D3B3> Ϊֱ<CEAA> ӵ<EFBFBD> <D3B5> <EFBFBD> acl_dlink.c <20> е ķ<D0B5> <C4B7> <EFBFBD>
370.3) samples/iplink: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> acl_iplink.c <20> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> غ<EFBFBD> <D8BA> <EFBFBD>
369) 2013.6.4
369.1) bugfix: acl_mylog.c->reopen_log <20> <> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> RETURN <20> 궨<EFBFBD> <EAB6A8> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD>
thread_mutex_unlock<EFBFBD> <EFBFBD> ԭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> thread_mutex_lock <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
368) 2013.5.27
368.1) bugfix: acl_json_parse.c: <20> <> Щ<EFBFBD> <D0A9> <EFBFBD> ֣<EFBFBD> <D6A3> 硰<EFBFBD> \<5C> <> <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֽڵ<D6BD> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> ַ<EFBFBD>
<EFBFBD> <EFBFBD> ͬ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ 92<39> <32> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> ݴ<EFBFBD> <DDB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> last_ch < 0 <20> ҵ<EFBFBD> ǰ char Ϊ 92 ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ; acl_xml_parse.c Ҳ<> <D2B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> <EFBFBD> <EFBFBD>
367) 2013.5.23
367.1) acl_json.c/acl_xml.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ý<EFBFBD> <C3BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <F3BBBAB4> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> acl_json_node_reset <20> <>
acl_xml_node_reset <20> е <EFBFBD> <D0B5> <EFBFBD> ACL_VSTRING_RESET <20> <> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> õ<EFBFBD> <C3B5> <EFBFBD> ACL_VSTRING_TERMINATE
366) 2013.5.20
366.1) bugfix: acl_basename.c -> acl_safe_basename <20> <> 3 <20> ·<EFBFBD> <C2B7> ĵ<DEB8> <C4B5> <EFBFBD> <EFBFBD> <EFBFBD>
365) 2013.5.13
365.1) acl_ioctl_server.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_ioctl_server_main <20> У <EFBFBD> <D0A3> <EFBFBD> Ҫ<EFBFBD> <D2AA> acl_ioctl_start
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> proc_init ֮ǰ<D6AE> <C7B0> <EFBFBD> Ա<EFBFBD> <D4B1> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> proc_init <20> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> Զ<EFBFBD> ʱ<EFBFBD> <CAB1>
364) 2013.3.26
364.1) bugfix: acl_xml_parse.c->xml_parse_attr_val() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD>
if (ch == attr->quote) ʱӦ<CAB1> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> xml->curr_node->last_ch = ch;
363) 2013.3.24
363.1) bugfix: acl_vstream_net.c->acl_vstream_listen_ex() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿڵ<D3BF> ַ
ʱû<EFBFBD> ж<EFBFBD> local_addr <20> <> ֵ
362) 2013.2.26
362.1) bugfix: acl_dns.c, acl_dns_serror() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> з<EFBFBD> <D0B7> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣʱ<CFA2> <CAB1> ѯ<EFBFBD> <D1AF> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD>
362.2) bugfix: acl_dns.c, acl_dns_lookup() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <D0B4> <EFBFBD> ACL_DNS_REQ <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD>
δ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
361) 2013.2.5
361.1) bugfix: acl_scan_dir.c, acl_scan_dir_open() ԭ<> <D4AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_mymalloc
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ浼<EFBFBD> <EFBFBD> һ Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <EFBFBD> ʼ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ָij<EFBFBD> acl_mycalloc
360) 2013.1.29
360.1) bugfix: acl_vbuf_print.c, <20> ¸ ĵĴ<C4B5> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> ʽ Ϊ %* <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
359) 2013.1.26
359) performance: acl_vbuf_print.c <20> е <EFBFBD> fmt <20> ڴ<EFBFBD> <DAB4> <EFBFBD> ԭ<EFBFBD> <D4AD> <EFBFBD> Ķ<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> ̶<EFBFBD> <CCB6> Ķ<EFBFBD> ջ
<EFBFBD> ڴ棬ʹ ֮<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߴ <EFBFBD> Լ 80% <20> <> <EFBFBD> ң<EFBFBD> <D2A3> ɴ<EFBFBD> <C9B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڸú<DAB8> <C3BA> <EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTRING <20> е ĸ<D0B5> ʽ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܣ<EFBFBD> fmt <20> <> <EFBFBD> ڴ<EFBFBD> <DAB4> ̶<EFBFBD> Ϊ 128 <20> ֽڣ<D6BD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 㹻֧<E3B9BB> <D6A7> <EFBFBD> <EFBFBD> <EFBFBD> ڵĻ<DAB5> <C4BB> <EFBFBD> ָ<EFBFBD> <EFBFBD> ȣ <EFBFBD> <C8A3> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> %{xxx}d <20> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> У <EFBFBD> {xxx} Ϊ<> <CEAA> <EFBFBD> ֣<EFBFBD> <D6A3> <EFBFBD> 123<32> <33> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> г <EFBFBD> <D0B3> <EFBFBD> 128 <20> <> <EFBFBD> ֽڳ<D6BD> <DAB3> ȵ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ֣<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Դ˹̶<EFBFBD> <EFBFBD> ߴ <EFBFBD> <EFBFBD> ķ<EFBFBD> ʽ <EFBFBD> ǰ<EFBFBD> ȫ<EFBFBD> <EFBFBD> Ч<EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> ù<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> 128 <20> <> <EFBFBD> <EFBFBD>
<EFBFBD> ڳ<EFBFBD> <EFBFBD> ȵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> fatal <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> зǷ<D0B7> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD>
358) 2013.1.22
358.1) bugfix: acl_single_server.c <20> <> single_server_wakeup <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> н<EFBFBD> <D0BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
Զ<EFBFBD> <EFBFBD> <EFBFBD> 뱾<EFBFBD> ص<EFBFBD> ַ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
357) 2012.12.31
357.1) feature: acl_ioctl_app_main.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <D6B8> :
__app_on_timeout/__app_on_close<73> <65> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿ<D7BD> <D3BF> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ر<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
356) 2012.12.30
356.1) feature: acl_file.h, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˼<EFBFBD> <CBBC> <EFBFBD> ͨ<EFBFBD> õĺ<C3B5> <C4BA> <EFBFBD>
356) 2012.12.28
356.1) compile: Makefile <20> ı <EFBFBD> <C4B1> 뿪<EFBFBD> <EBBFAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> -pedantic ѡ <> <EFBFBD> <EEA3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> BUG
355) 2012.12.27
355.1) performance: ACL_VSTREAM <20> ṹ<EFBFBD> Ż<EFBFBD> <C5BB> ˸ <EFBFBD> <CBB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> ýṹ<C3BD> ijߴ <C4B3> <DFB4> <EFBFBD> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD> 9K
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> ֻ<EFBFBD> <EFBFBD> 800 <20> <> <EFBFBD> ֽڣ<D6BD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> дʱ<D0B4> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> IJ<EFBFBD> <C4B2> <EFBFBD>
354) 2012.12.3
354.1) bugfix: acl_events: event_limit() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> acl_open_limit() ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
һ <EFBFBD> <EFBFBD> Ĭ<EFBFBD> ϵ<EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ½<EFBFBD> <EFBFBD> ̴<EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
354.2) feature: acl_ioctl_server.c/acl_aio_server.c: <20> <> <EFBFBD> ͻ<EFBFBD> <CDBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1>
ԭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> dz<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڸ<EFBFBD> Ϊ<EFBFBD> ó<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
353) 2012.10.12
353.1) feature: xml/,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿڣ<EFBFBD> acl_xml_getElementMeta/acl_xml_getEncoding/acl_xml_getType,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <EFBFBD> xml <20> <> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD> <EFBFBD> ֶε<D6B6> <CEB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ
352) 2012.9.29
352.1) Ϊ<> ˼<EFBFBD> <CBBC> <EFBFBD> MAC OS <20> Լ<EFBFBD> <D4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڶ<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> أ<EFBFBD> <D8A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> __thread <20> ؼ<EFBFBD> <D8BC> ֱ<EFBFBD> ʶ<EFBFBD> ľֲ<C4BE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> ͳһ <CDB3> <D2BB> Ϊͨ<CEAA> <CDA8> acl_pthread_getspecific
<EFBFBD> Ⱥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
351) 2012.9.25
351.1) <20> <> MAC OS <20> <> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˴ <CBB4> ʾ <EFBFBD> <CABE>
351.2) ȥ<> <C8A5> <EFBFBD> <EFBFBD> code/ Ŀ¼<C4BF> <C2BC> һ Щ<D2BB> <D0A9> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> صĴ<D8B5> <C4B4> <EFBFBD>
350) 2012.8.26
350.1) feature: ACL_VSTREAM::flag <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> ־λ<D6BE> <CEBB> ACL_VSTREAM_FLAG_PREREAD,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_can_read ʱ<> <CAB1> <EFBFBD> жϴ˱<CFB4> ־λ<D6BE> <CEBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˴ ˱<CBB4> ־λ<D6BE> <CEBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> ʾ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݿɶ<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> ú<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ԥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
349) 2012.8.25
349.1) bugfix: acl_vstream.c <20> н<EFBFBD> stream->sys_read_ready = 0; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
__vstream_sys_read <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ա<EFBFBD> ֤<EFBFBD> <D6A4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD>
348) 2012.8.1
348.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> е Ķ<D0B5> ʱ<EFBFBD> <CAB1> <EFBFBD> ӿڽ<D3BF> <DABD> <EFBFBD> <EFBFBD> ģ<DEB8> ʹ ֮<CAB9> <D6AE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ԭ<EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <EFBFBD> ܣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽<EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> ֻ<EFBFBD> е <EFBFBD> <D0B5> 첽<EFBFBD> <ECB2BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܣ<EFBFBD> <DCA3> <EFBFBD> <EFBFBD> е Ķ<D0B5> ʱ<EFBFBD> <CAB1> <EFBFBD> ŻῪ<C5BB> <E1BFAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƣ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )<29> <> <EFBFBD> <EFBFBD> <EFBFBD> ڽ<EFBFBD> <DABD> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܰ<EFBFBD> <DCB0> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <C3BF> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
Ӱ<EFBFBD> 쵽<EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> У <EFBFBD>
a) event: acl_events.c, acl_events.h, events_select.c, events_pool.c,
events_kernel.c, events_kernel2.c, events_kernel3.c, events_iocp.c,
events_wmsg.c, events_timer.c, events_alloc.c, events.c, events_select_thr.c,
events_poll_thr.c, events_kernel_thr.c, events_timer_thr.c
b) aio: acl_aio.c, acl_aio.h
c) master: master_spawn.c, master_wakeup.c, acl_single_server.c, acl_multi_server.c,
d) acl_trigger_server.c, acl_listener_server.c, unix_trigger.c
e) ioctl: acl_ioctl.c, acl_ioctl.h
347) 2012.7.27
347.1) acl_aio_read.c: acl_aio_enable_read() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˵ݹ<CBB5> <DDB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƣ<EFBFBD>
can_read_callback() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> READ_SAFE_DISABLE <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
346) 2012.7.25
346.1) acl_xml_util.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> '<' <20> <> '>' <20> <> ת<EFBFBD> <D7AA> ֧<EFBFBD> <D6A7>
346.2) acl_json_util.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> '{', '}', '[', ']' <20> <> ת<EFBFBD> <D7AA> ֧<EFBFBD> <D6A7>
345) 2012.7.23
345.1) bugfix: acl_xml_parse.c<> <63> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> '\' ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <D0A3> <EFBFBD>
ACL_XML_ATTR <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӳ<EFBFBD> Ա backslash <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
345.2) bugfix: acl_xml_util.c/acl_json_util.c <20> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> Ҳû<D2B2> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> '\' <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
344) 2012.7.10
344.1) compile: <20> <> snprintf <20> <> WIN32 <20> <> ʵ<EFBFBD> <CAB5> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9>
343) 2012.7.2
343.1) bugfix: acl_aio_stream.c->close_astream() <20> в<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> ͷ<EFBFBD> <CDB7> <EFBFBD> acl_aio_open
<EFBFBD> д<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĸ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
343.2) feature: acl_aio.h, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_AIO_SET_TIMEOUT/ACL_AIO_SET_CTX<54> <58>
<EFBFBD> <EFBFBD> <EFBFBD> Կ<EFBFBD> <EFBFBD> ٵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽<EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> ʱ/<2F> <> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> <C4B2> <EFBFBD>
342) 2012.6.6
342.1) compile: event_epoll.h <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> #include <stdint.h> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
--liuhui (liuhui331234958@gmail.com)
341) 2012.6.4
341.1) bugfix: acl_ifconf.c <20> <> win32 <20> <> acl_free_ifaddrs() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD>
341.2) feature: acl_env.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_getenv3()/3 <20> ú<EFBFBD> <C3BA> <EFBFBD> <EFBFBD> <EFBFBD> win32 <20> <> Ҫ<EFBFBD> <D2AA> acl_getenv <20> <> <EFBFBD> <EFBFBD> ȫ
341.3) compile: <20> <> AS6/CS6 <20> ϱ <EFBFBD> <CFB1> <EFBFBD> ͨ<EFBFBD> <CDA8>
340) 2012.5.26
340.1) bugfix: net/connect/acl_stream_connect.c: acl_stream_connect()/3 <20> <> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7>
SUNOS5<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> LINUX<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ע<EFBFBD> ͣ<EFBFBD> Ӱ<EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master/framework/trigger/stream_trigger.c
340) 2012.5.10
340.1) bugfix: acl_aio_app_main.c/acl_ioctl_app_main.c <20> <> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD>
acl_access_permit ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IP:PORT<52> <54> ʽ <EFBFBD> <CABD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> IP
339) 2012.4.17
339.1) feature: json/, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> json <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> ӿ<EFBFBD>
338) 2012.4.15
338.1) feature: xml/, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> xml <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> ӿ<EFBFBD>
338.2) samples: samples/xml/, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˹<EFBFBD> <CBB9> <EFBFBD> xml <20> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : build_xml2()
337) 2012.4.9
337.1) bugfix: <20> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ͳ<EFBFBD> ƥ<EFBFBD> <C6A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
336) 2012.4.5 --- 2.1.2.8 release
336.1) bugfix: events.h <20> е ĺ<D0B5> SET_TIME ԭ<> <D4AD> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD> Ϊ<EFBFBD> <CEAA>
#define SET_TIME(x) { \
struct timeval _tv; \
gettimeofday(&_tv, NULL); \
(x) = ((unsigned long) _tv.tv_sec) * 1000000 + ((unsigned long) _tv.tv_usec);
\
}
Ӧ<EFBFBD> ø<EFBFBD> Ϊ<EFBFBD> <EFBFBD>
#define SET_TIME(x) { \
struct timeval _tv; \
gettimeofday(&_tv, NULL); \
(x) = ((acl_int64) _tv.tv_sec) * 1000000 + ((acl_int64) _tv.tv_usec);
\
}
<EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> 32λ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> unsigned long Ҳ<> <D2B2> 32λ<32> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> Լ<EFBFBD> <D4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> x ֵ<> <D6B5> <EFBFBD> <EFBFBD> <EFBFBD> Ѿ<EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> ˣ<EFBFBD> <CBA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> øú<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е Ķ<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
335) 2012.4.1
335.1) bugfix: acl_mem_slice.c <20> <> <EFBFBD> <EFBFBD> mem_slice_free <20> <> <EFBFBD> <EFBFBD>
thread_mutex_lock(__mem_slice_list_lock) ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> __mem_slice_list_lock
<EFBFBD> Ѿ<EFBFBD> <EFBFBD> <EFBFBD> free_global_ctx <20> б <EFBFBD> <D0B1> ͷ<EFBFBD> <CDB7> <EFBFBD>
334) 2012.3.31
334.1) lib_acl/src/master/framework: <20> ദ<EFBFBD> <E0B4A6> δ<EFBFBD> <CEB4> ȫ<EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> ʼ ֵ<CABC> <D6B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> AS4/CS4 <20> ϳ <EFBFBD> <CFB3> <EFBFBD>
334.2) bugfix: acl_mylog.c->acl_close_log() <20> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> ͷ<EFBFBD> <CDB7> ߳<EFBFBD> <DFB3> <EFBFBD> ʱ<EFBFBD> ظ<EFBFBD> <D8B8> ͷ<EFBFBD> <CDB7> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
log->lock <20> <> <EFBFBD> ڴ棬<DAB4> ڵ<EFBFBD> <DAB5> <EFBFBD> thread_mutex_destroy ʱ<> Ѿ<EFBFBD> <D1BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> Զ<EFBFBD> <D4B6> ͷŵ<CDB7> <C5B5> <EFBFBD>
334.3) acl_single_server.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־<EFBFBD> <EFBFBD> ˳<EFBFBD> <CBB3>
333) 2012.3.27
333.1) bugfix: acl_mem_slice.c <20> <> һ <EFBFBD> <D2BB> <EFBFBD> ڴ<EFBFBD> й¶<D0B9> <C2B6> <EFBFBD> ⣬<EFBFBD> <E2A3AC> Ȼ<EFBFBD> <C8BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> <D6BB> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD>
333.2) private_thread_mutex.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> thread_mutex_desotry <20> <> <EFBFBD> <EFBFBD>
332) 2012.3.26
332.1) acl_json.c: <20> <> һ <EFBFBD> <D2BB> acl_json_alloc() <20> <> <EFBFBD> <EFBFBD>
331) 2012.3.24
331.1) acl_master: prefork ģʽ <C4A3> Ľ<EFBFBD> <C4BD> <EFBFBD> ԭ<EFBFBD> <D4AD> <EFBFBD> ǵ<EFBFBD> <C7B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <D3B5> <EFBFBD> ʱ<EFBFBD> Ż<EFBFBD> Ԥ<EFBFBD> <D4A4> fork
ָ<EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڸ<EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱֱ<EFBFBD> <EFBFBD> Ԥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
330) 2012.3.17
330.1) feature: acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> ֧<EFBFBD> <D6A7> prefork ģʽ, ֻ<> <D6BB> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD>
<EFBFBD> е <EFBFBD> master_prefork <20> <> <EFBFBD> ó<EFBFBD> > 0 <20> <> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> prefork ģʽ
330.2) feature: acl_read_wait/acl_write_wait ֧<> <D6A7> <EFBFBD> <EFBFBD> UNIX <20> ²<EFBFBD> <C2B2> <EFBFBD> poll <20> <> ʽ
<EFBFBD> <EFBFBD> <EFBFBD> ж϶<EFBFBD> д<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> select <20> <> <EFBFBD> ŵ<EFBFBD> <C5B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֿ<EFBFBD> <D6BF> Ժ<EFBFBD> <D4BA> <EFBFBD> <EFBFBD> ׳ <EFBFBD> <D7B3> <EFBFBD> 1024 <20> <> <EFBFBD> <EFBFBD>
329) 2012.3.14
329.1) bugfix: ȥ<> <C8A5> <EFBFBD> <EFBFBD> acl_ioctl_app_main.c <20> е <EFBFBD> app_client_idle_limit <20> <> <EFBFBD> <EFBFBD>
ѡ <EFBFBD> ʹ <EFBFBD> <EFBFBD> acl_ioctl_server.c <20> е <EFBFBD> ioctl_rw_timeout <20> <> <EFBFBD> <EFBFBD> ѡ <EFBFBD> <D1A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͻ<EFBFBD> <CDBB> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ӵĶ<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Ϳ <EFBFBD> <EFBFBD> г <EFBFBD> ʱʱ<EFBFBD> 䣬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˵<EFBFBD> <EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϻ <EFBFBD> <EFBFBD> ij<EFBFBD> ʱʱ<EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
328) 2012.3.7
328.1) compile: <20> ڱ<EFBFBD> <DAB1> 붯̬<EBB6AF> <CCAC> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ָ<EFBFBD> <D6B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ·<EFBFBD> <C2B7> <EFBFBD> <EFBFBD> <EFBFBD> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> £<EFBFBD>
make shared rpath=xxx; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 붯̬<EBB6AF> <CCAC>
<EFBFBD> <EFBFBD> make rpath=xxx; ͬʱ<CDAC> <CAB1> <EFBFBD> 붯̬<EBB6AF> ⼰<EFBFBD> <E2BCB0> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD>
327) 2012.2.12
327.1) performance: acl_json.c, acl_fifo.c, acl_argv.c ͨ<> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> ض<EFBFBD> <D8B6> <EFBFBD>
<EFBFBD> Ż<EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
326) 2012.2.11
326.1) performance: acl_xml.c, ͨ<> <CDA8> <EFBFBD> ڴ<EFBFBD> <DAB4> ط<EFBFBD> ʽ <EFBFBD> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷŹ<CDB7> <C5B9> <EFBFBD>
326.2) performance: acl_htable.c, <20> <> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> ϣ<EFBFBD> <CFA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> ض<EFBFBD> <D8B6> <EFBFBD> Ϊ
<EFBFBD> ɲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> ض<EFBFBD> <EFBFBD> <EFBFBD>
325) 2012.2.6
325.1) performance: aio/, <20> Ż<EFBFBD> <C5BB> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> /д<> <D0B4> <EFBFBD> <EFBFBD>
324) 2012.1.10
324.1) feature: acl_aio_app_main.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˽<EFBFBD> <CBBD> <EFBFBD> <EFBFBD> л<EFBFBD> <D0BB> <EFBFBD> <EFBFBD> <EFBFBD> ֮ǰ<D6AE> <C7B0> <EFBFBD> õĻص<C4BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD>
323) 2012.1.8
323.1) feature: acl_ioctl_app_main.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˽<EFBFBD> <CBBD> <EFBFBD> <EFBFBD> л<EFBFBD> <D0BB> <EFBFBD> <EFBFBD> <EFBFBD> ֮ǰ<D6AE> <C7B0> <EFBFBD> õĻص<C4BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD>
322) 2011.11.28
322.1) acl_pthread_mutex.c: <20> <> <EFBFBD> з<EFBFBD> <D0B7> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> acl_mymalloc <20> 滻<EFBFBD> <E6BBBB> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD>
acl_dbuf_pool_alloc <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ա<EFBFBD> <D4B1> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> ڶ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ڵĶѻ<C4B6> <D1BB> <EFBFBD> <EFBFBD> <EFBFBD>
321) 2011.11.26
321.1) acl_fhandle.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> ã<EFBFBD> ʹ ֮<CAB9> <D6AE> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> <EFBFBD> ,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> gid_server <20> dz<EFBFBD> <C7B3> <EFBFBD> <EFBFBD> <EFBFBD>
321.2) acl_htable.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˱<EFBFBD> ־λ ACL_HTABLE_FLAG_KEY_LOWER <20> <> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϣ<EFBFBD> <CFA3> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ־֮һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˴ ˱<EFBFBD> <EFBFBD> ǣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵתΪС д<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵ<EFBFBD> ֶԼ<EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɾ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ּ<EFBFBD> ֵ<EFBFBD> <EFBFBD> С д<EFBFBD> Ĺ<EFBFBD> <EFBFBD> <EFBFBD>
320) 2011.11.19
320.1) bugfix: acl_json.c, json <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ľ<EFBFBD> <C4BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
320.2) feature: acl_json_util.c, acl_json_getElementsByTags <20> <> ѯ<EFBFBD> <D1AF> ǩ֧<C7A9> <D6A7> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> ʽ
320.3) feature: acl_xml_util.c, acl_xml_getElementsByTags <20> <> ѯ<EFBFBD> <D1AF> ǩ֧<C7A9> <D6A7> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> ʽ
319) 2011.10.23
319.1) json/: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> json <20> <> <EFBFBD> ݸ<EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> Դ˼<D4B4> <CBBC> <EFBFBD> C<EFBFBD> <43> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> <EFBFBD> ߵ <EFBFBD> <DFB5> <EFBFBD> ˹<EFBFBD> <CBB9>
C <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǿ<EFBFBD> <EFBFBD> <F3A3ACBF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> κ<EFBFBD> <CEBA> <EFBFBD> <EFBFBD> 顣
318) 2011.10.8
318) acl_msg.c: <20> <> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־ȴ<D6BE> <C8B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־<EFBFBD> <D6BE> ¼<EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> ʱ<EFBFBD> <CAB1> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD> Ĭ<EFBFBD> ϲ <EFBFBD> <CFB2> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˿<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> <EFBFBD> <EFBFBD> Ĭ<EFBFBD> ϲ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Դ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> κβ<EFBFBD> <EFBFBD> <EFBFBD>
317) 2011.10.1
317.1) stdlib/ Ŀ¼<C4BF> µ<EFBFBD> acl_vstring.h, acl_vbuf.h, acl_vbuf_print.h
ͷ<EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е ĺ궨<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Postfix <20> ij<EFBFBD> ͻ
316) 2011.9.12
316.1) acl_pthread_t <20> <> <EFBFBD> ¶<EFBFBD> <C2B6> <EFBFBD> Ϊ unsigned long <20> <> <EFBFBD> <EFBFBD>
316.2) acl_mem_slice.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̣߳<DFB3> <CCA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ͷŵĻ<C5B5> <C4BB> <EFBFBD>
315) 2011.9.5
315.1) feature: acl_htmlcode.c ֧<> <D6A7> &#xxx; <20> <> ʽ <EFBFBD> Ľ<EFBFBD> <C4BD> <EFBFBD>
314) 2011.7.19
314.1) feature: acl_xml.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_xml_add_tag <20> <> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> ķDZպϱ <D5BA> ǩ
313) 2011.7.18
313) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32 ƽ ̨<C6BD> µİ汾<C4B0> <E6B1BE> Դ<EFBFBD> ļ<EFBFBD>
312) 2011.6.29
312.1) acl_aio_read.c: <20> <> <EFBFBD> <EFBFBD> acl_aio_gets, acl_aio_gets_nonl, acl_aio_read,
acl_aio_readn <20> <> <EFBFBD> ĸ<EFBFBD> <C4B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> dz<EFBFBD> <C7B3> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> Ļص<C4BB> <D8B5> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ״̬<EFBFBD> <EFBFBD> <EFBFBD> ҵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> ٴε<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܶ<EFBFBD> <EFBFBD> <EFBFBD> Щ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> е Ļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵͳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݵĻص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̣<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŀ<EFBFBD> ʼ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Գ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ״̬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ״̬<EFBFBD> <EFBFBD>
311) 2011.6.17
311.1) bugfix: acl_aio_server.c, acl_ioctl_server.c, acl_single_server.c,
acl_multi_server.c, acl_trigger_server.c, <20> <> <EFBFBD> е <EFBFBD> <D0B5> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> صı <D8B5> <C4B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> int <20> <> <EFBFBD> ͣ<EFBFBD>
Ϊ<EFBFBD> ˵<EFBFBD> <EFBFBD> <EFBFBD> acl_event_request_timer <20> ȷ<EFBFBD> <C8B7> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> 1000000 ת<> <D7AA> 64 int <20> <> <EFBFBD> <EFBFBD> ,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <EFBFBD> acl_int64 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ѱ<EFBFBD> <D1B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڽ<EFBFBD> <DABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 1000000 <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> Ҫ<EFBFBD> <D2AA> 64 λ
<EFBFBD> <EFBFBD> <EFBFBD> ͶԴ<EFBFBD>
310) 2011.6.13
310.1) bugfix: acl_doze.c, <20> <> <EFBFBD> ߵ <EFBFBD> ʱ<EFBFBD> 䵥λ<E4B5A5> <CEBB> <EFBFBD> <EFBFBD> ʵ<EFBFBD> ֵIJ<D6B5> <C4B2> <EFBFBD> <EFBFBD> Ǻ<EFBFBD> <C7BA> 뼶
309) 2011.6.10
309.1) acl_getopt.c: <20> <> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> fprintf<74> <66> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܻᵼ<DCBB> <E1B5BC> ʹ <EFBFBD> <CAB9> VC2010 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <C4B9> <EFBFBD>
<EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> /MD <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ´ <EFBFBD> <C2B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڰ<EFBFBD> <DAB0> <EFBFBD> <EFBFBD> е <EFBFBD> fprintf <20> ij<EFBFBD> printf
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC2010 <20> Ĺ<EFBFBD> <C4B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ͳ<EFBFBD> <CDB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ´ <EFBFBD> <C2B4> <EFBFBD> <EFBFBD> <EFBFBD>
#if !defined(VC2003) && !defined(VC6)
extern "C" { FILE _iob[3] = {__iob_func()[0], __iob_func()[1], __iob_func()[2]}; }
#endif
308) 2011.6.8
308.1) bugfix: acl_vstream.c, acl_vstream_readn_peek <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> Ѿ<EFBFBD> <D1BE> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
Ӱ<EFBFBD> <EFBFBD> acl_aio_read.c <20> е <EFBFBD> acl_aio_readn <20> <> <EFBFBD> <EFBFBD>
307) 2011.5.31
307.1) feature: events/, aio/ ֧<> ֶ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ա<EFBFBD> ѭ<EFBFBD> <D1AD> ʹ <EFBFBD> ã<EFBFBD> <C3A3> û<EFBFBD> ֻ<EFBFBD> <D6BB> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD>
acl_event_keep_timer <20> <> <EFBFBD> ɱ<EFBFBD> ֤<EFBFBD> <D6A4> acl_event_request_timer <20> <> <EFBFBD> <EFBFBD> <EFBFBD> õĶ<C3B5> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> Ա<EFBFBD> ѭ<EFBFBD> <D1AD>
ʹ <EFBFBD> ã<EFBFBD> Ĭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¶<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> <EFBFBD> ʹ <EFBFBD> ôε<EFBFBD>
306) 2011.5.24
306.1) bugfix: acl_xml_util.c, acl_xml_getElementsByTags() <20> е <EFBFBD> <D0B5> <EFBFBD>
acl_xml_getElementsByTagName() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD> û<EFBFBD> б <EFBFBD> <D0B1> ͷ<EFBFBD>
306.2) bugfix: acl_xml.c, xml_iter_next/xml_iter_prev <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> do-while ѭ<> <D1AD> <EFBFBD> <EFBFBD>
<EFBFBD> жϽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> parent == NULL<4C> <4C> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <D0B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_xml_alloc() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> XML <20> <> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> Ч<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_xml_foreach_init() ʹ <> õ<EFBFBD> XML <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> <D0A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> £<EFBFBD> <C2A3> <EFBFBD> ѭ<EFBFBD> <D1AD> <EFBFBD> <EFBFBD> ʼ
<EFBFBD> ж<EFBFBD> parent == xml->root<6F> <74> <EFBFBD> Դ<EFBFBD> <D4B4> ж<EFBFBD> <D0B6> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> ˳<EFBFBD> ѭ<EFBFBD> <D1AD>
305) 2011.5.19
305.1) bugfix: 2011.5.18 <20> <> acl_vstream.c <20> <> <EFBFBD> <EFBFBD> <DEB8> <EFBFBD> Ȼ<EFBFBD> <C8BB> ʹ iocp <20> <> <EFBFBD> 湤<EFBFBD> <E6B9A4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ȴ<EFBFBD> <EFBFBD> ʹ win32 <20> <> Ϣ<EFBFBD> <CFA2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> <EFBFBD> Իָ<D4BB> acl_vstream.c ֮ǰ<D6AE> <C7B0> ״̬<D7B4> <CCAC> ͬʱΪ<CAB1> ˱<EFBFBD> <CBB1> <EFBFBD>
iocp <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> iocp <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> stream_on_close <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> ӿڹر<DAB9>
304) 2011.5.18
304.1) bugfix: acl_vstream.c<> <63> <EFBFBD> <EFBFBD> <DEB8> <EFBFBD> acl_vstream_close() <20> йر<D0B9> <D8B1> ӿ<D7BD> <D3BF> <EFBFBD> <EFBFBD> ӵ<EFBFBD>
˳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> iocp <20> <> Ϊ<EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ر<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> events_iocp.c <20> е <EFBFBD>
stream_on_close<EFBFBD> <EFBFBD> <EFBFBD> ú<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷŵ<EFBFBD> fdp->event_read t fdp->event_write <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿ<EFBFBD> δ<EFBFBD> ر<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> п<EFBFBD> <EFBFBD> ܻᱻ iocp ʹ <> <CAB9> ʱ<EFBFBD> <CAB1> ֻ<EFBFBD> е <EFBFBD> <D0B5> ӿڹر<DAB9> ʱ<EFBFBD> <CAB1>
iocp <20> Ų<EFBFBD> <C5B2> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> IOCP_EVENT->overlapped <20> ȳ<EFBFBD> Ա
304.2) feature: acl_aio_connect.c<> <63> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ win32 <20> <> Ϣʱ֧<CAB1> <D6A7> <EFBFBD> <EFBFBD> <EFBFBD> ӳ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ܼ<EFBFBD>
303) 2011.5.17
303.1) bugfix: <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ľ<EFBFBD> <C4BE> ȸij<C8B8> <EFBFBD> 뼶<EFBFBD> <EBBCB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> events/ <20> µ<EFBFBD> <C2B5> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
302) 2011.5.16
302.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 붨ʱ<EBB6A8> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> صĹ<D8B5> <C4B9> ܺ<EFBFBD> <DCBA> <EFBFBD> <EFBFBD> е <EFBFBD> ʱ<EFBFBD> 侫<EFBFBD> <E4BEAB> <EFBFBD> <EFBFBD> <EFBFBD> 뼶<EFBFBD> <EBBCB6> Ϊ<CEAA> 뼶
301) 2011.5.13
301.1) compile: <20> <> StdAfx.h <20> <> include/ Ŀ¼<C4BF> Ƶ<EFBFBD> lib_acl/ Ŀ¼
300) 2011.5.10
300.1) feature: acl_pthread.c, acl_pthread_tls_get() <20> <> <EFBFBD> Ա<EFBFBD> ֤<EFBFBD> <D6A4> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> ˳<EFBFBD> ʱ
<EFBFBD> ͷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̵߳ľֲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> valgrind <20> <> <EFBFBD> 鲻<EFBFBD> <E9B2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
300.2) feature: acl_init.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_main_thread_self() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̵߳<EFBFBD> <EFBFBD> ̺߳<EFBFBD>
300.3) bugfix: acl_pthread_mutex.c <20> <> acl_thread_mutex_init_once() <20> ڴ<EFBFBD> <DAB4> <EFBFBD>
__header_key <20> <> __pool_key ʱ<> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> ٽ<EFBFBD> <D9BD> ˶<EFBFBD> <CBB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> acl_pthread_key_create()
<EFBFBD> <EFBFBD> <EFBFBD> ٽ<EFBFBD> acl_pthread_key_create() <20> <> <EFBFBD> <EFBFBD> ֵ<EFBFBD> <D6B5> <EFBFBD> ˶<EFBFBD> <CBB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ
299) 2011.5.9
299.1) bugfix: acl_ioctl_server.c, <20> <> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> <D5B5> Ŀͻ<C4BF> <CDBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> ̵<EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> ַ
298) 2011.5.8
298.1) feature: acl_xml.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_xml_foreach_init, <20> ú<EFBFBD> <C3BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Խ<EFBFBD> ij<EFBFBD> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> Ϊһ <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> xml <20> <> <EFBFBD> ĸ<EFBFBD> <C4B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> б <EFBFBD> <D0B1> <EFBFBD>
297) 2011.5.7
297.1) feature: acl_xml.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_xml_getElementsByTags, <20> ú<EFBFBD> <C3BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1>
<EFBFBD> <EFBFBD> <EFBFBD> ϶༶<EFBFBD> <EFBFBD> ǩ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> xml <20> <> <EFBFBD> 㼯<EFBFBD> <E3BCAF>
296) 2011.5.6
296.1) bugfix: events_wmsg.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> Ҫ<EFBFBD> ر<EFBFBD> <D8B1> <EFBFBD> <D7BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> ,
Ӧ<EFBFBD> õ<EFBFBD> <EFBFBD> <EFBFBD> DestroyWindow(), <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> CloseWindow()
295) 2011.4.28
295.1) bugfix: <20> <> UNIX/LINUX <20> µ<EFBFBD> select <20> <> iocp ϵͳ<CFB5> <CDB3> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <C4B5> <EFBFBD> <EFBFBD> 磺
select(win32), epoll, kqueue, devpoll, WSAAsyncSelect, <20> <> <EFBFBD> Ƕ<EFBFBD> <C7B6> <EFBFBD> <EFBFBD> ܴ<EFBFBD> <DCB4> <EFBFBD> һ <EFBFBD> <D2BB>
<EFBFBD> <EFBFBD> <EFBFBD> ⣺<EFBFBD> <EFBFBD> ʹ socket <20> <> ϵͳ<CFB5> <CDB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ȼ<EFBFBD> <C8BB> <EFBFBD> <EFBFBD> <EFBFBD> ݣ<EFBFBD> <DDA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> <EFBFBD> <EFBFBD> <E2B5BD> <EFBFBD> ӹرգ <D8B1> <D5A3> п<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <EFBFBD> رյ<EFBFBD> <EFBFBD> ¼<EFBFBD> ֪ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl <20> <> <EFBFBD> ¼<EFBFBD> ֪ͨ<CDA8> <D6AA> <EFBFBD> Ƽ <EFBFBD> <C6BC> 첽IO<49> <4F> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> µ<EFBFBD> <C2B5> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֤<EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȣ <EFBFBD> <EFBFBD> <EFBFBD> socket<EFBFBD> <EFBFBD> ϵͳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> Ҳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƚ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݶ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݶ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ر<EFBFBD> <EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ر<EFBFBD> socket.
Ӱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD>
acl_vstream.c: acl_vstream_xxx_peek
acl_aio_read.c: __xxx_notify_callback
294) 2011.4.22
294.1) bugfix: acl_aio_read.c, acl_aio_readn() Ӧ<> õ<EFBFBD> <C3B5> <EFBFBD> __readn_peek <20> <>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> __read_peek<65> <6B> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> __read_peek <20> е <EFBFBD> acl_vstream_read_peek <20> <> <EFBFBD> <EFBFBD> 0
ʱ<EFBFBD> <EFBFBD> Ӧ<EFBFBD> <EFBFBD> fatal
293) 2011.4.20--21
293.1) feature: acl_xml_code.c, acl_html_code.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> XML <20> <> HTML
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 빦<EFBFBD> <EFBFBD>
392) 2011.4.19
392.1) bugfix: acl_xml.c, acl_xml_reset() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ð<EFBFBD> xml->curr_node
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> NULL<4C> <4C> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᵼ<EFBFBD> <E1B5BC> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD>
392.2) feature: acl_xml_parse.c, <20> <> <EFBFBD> Լ<EFBFBD> <D4BC> ݵ<EFBFBD> <DDB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ">" <20> <> ʾ <EFBFBD> <CABE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
"/>" <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
392.3) feature: acl_xml_util.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_xml_dump2 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> xml <20> <> <EFBFBD> <EFBFBD> ת
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
391) 2011.4.18
391.1) feature: acl_vbuf_print.c, ֧<> <D6A7> %zu, %zd <20> <> <EFBFBD> <EFBFBD>
390) 2011.4.17
390.1) acl_mem_slice.c: <20> <> <EFBFBD> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_pthread_tls_get/set
<EFBFBD> <EFBFBD> Ϊ acl_pthread_get{set}specific<69> <63> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ò<EFBFBD> <C3B2> <EFBFBD> acl_pthread_tls_xxx
<EFBFBD> <EFBFBD> ͬʱʹ <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͻ
389) 2011.4.12
389.1) performance: acl_xml.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_xml_reset, acl_xml_cache
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ xml <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> ʹ <EFBFBD> ã<EFBFBD> <C3A3> <EFBFBD> <EFBFBD> Ҵ<EFBFBD> <D2B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˽<EFBFBD> <CBBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
388) 2011.4.11
388.1) Makefile: <20> <> ÿ<EFBFBD> <C3BF> Դ<EFBFBD> <D4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ı <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> Makefile
<EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> б <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Դ<EFBFBD> ļ<EFBFBD>
388.2) Makefile: Ĭ<> Ͻ<EFBFBD> mysql <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
387) 2011.4.8
387) <20> <EFBFBD> <DEB8> ˼<EFBFBD> <CBBC> <EFBFBD> <EFBFBD> ڸ߰汾GCC<43> ϵı <CFB5> <C4B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
386) 2011.3.28
386.1) acl_aio_read.c: <20> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> 첽<EFBFBD> <ECB2BD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD>
386.2) acl_aio_stream.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <C4B9> ܺ<EFBFBD> <DCBA> <EFBFBD>
385) 2011.3.25
385.1) <20> <> win32 ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> VC <20> <> <EFBFBD> <EFBFBD> release <20> 汾ʱ assert <20> ᱻ<EFBFBD> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͳһ <EFBFBD> <EFBFBD> assert <20> ij<DEB8> acl_assert
385.2) <20> ṩ<EFBFBD> <E1B9A9> acl_aio_create2 <20> ӿڣ<D3BF> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_EVENT_WMSG <20> <> Ϣ
<EFBFBD> 첽 IO ʱ<> <CAB1> <EFBFBD> <EFBFBD> ָ<EFBFBD> <D6B8> Ҫ<EFBFBD> <EFBFBD> <F3B6A8B5> <EFBFBD> Ϣֵ
385.3) acl_aio_read.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_EVENT_WMSG ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ܻ<EFBFBD> <DCBB> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ݣ<EFBFBD> <EFBFBD> <EFBFBD> Ƕ<EFBFBD> ײ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ﵽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> ᵼ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> Ӧ<EFBFBD> ã<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <EFBFBD> ̽<EFBFBD> <EFBFBD>
<EFBFBD> Ĺ<EFBFBD> <EFBFBD> ܣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݶ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> Ӧ<EFBFBD> <EFBFBD>
384) 2011.3.19
384.1) acl_aio_listen.c: <20> <> acl_aio_listen/acl_aio_accept <20> <> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD>
astream->flag |= ACL_AIO_FLAG_ISRD<52> <44> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_aio_disable_read <20> Լ<EFBFBD> <D4BC> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
383) 2011.3.18
383.1) feature: events_wmsg.c ͨ<> <CDA8> SetWindowLongPtr/GetWindowLongPtr
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> API <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ھ <EFBFBD> <DABE> <EFBFBD> <EFBFBD> <EFBFBD> ˽<EFBFBD> <CBBD> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˽<EFBFBD> <CBBD> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> Ĵ<EFBFBD> ȡ<EFBFBD> <EFBFBD> ʽ
382) 2011.3.16
382.1) bugfix: events_select_thr.c <20> е <EFBFBD> <D0B5> <EFBFBD> IO <20> <> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
381) 2011.3.13
381.1) bugfix: event <20> <> <EFBFBD> <EFBFBD> WIN32 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ڿ<EFBFBD> <DABF> ܺķ<DCBA> CPU<50> <55> <EFBFBD> <EFBFBD>
381.2) aio: <20> <> WIN32 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> Բ<EFBFBD> <D4B2> <EFBFBD> event <20> е Ķ<D0B5> ʱ<EFBFBD> <CAB1>
380) 2011.3.12
381) feature: event/aio <20> <> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32<33> <32> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <CFA2> ֧<EFBFBD> ֣<EFBFBD> <D6A3> <EFBFBD> <EFBFBD> ˣ<EFBFBD> ACL<43> <4C>
<EFBFBD> <EFBFBD> <EFBFBD> 첽<EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 漰<EFBFBD> 첽IO<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <EFBFBD> : select, pool, epoll, kqueue, devpoll,
iocp, WIN32 GUI <20> <> Ϣ<EFBFBD> <CFA2>
382) feature: event/aio <20> <> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32<33> <32> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> ʱ<EFBFBD> <CAB1> ֧<EFBFBD> <D6A7>
379) 2011.3.8
379.1) bugfix: events_kernel.c, events_iocp.c: <20> ڵ<EFBFBD> <DAB5> <EFBFBD> event_disable_xxx
ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <EFBFBD> ״̬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <EFBFBD> <EFBFBD> event_disable_read ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> ж<EFBFBD> flag
<EFBFBD> <EFBFBD> ־λ<EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> EVENT_FDTABLE_FLAG_WRITE, <20> <> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> ж<EFBFBD> flag <20> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˱<EFBFBD> ־
EVENT_FDTABLE_FLAG_ADD_WRITE, <20> Է<EFBFBD> ֹ<EFBFBD> <D6B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڶ<EFBFBD> /д״̬ʱ<CCAC> <CAB1> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD>
380.1) private_vstream.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> POSTFIX<49> е ij<D0B5> ͻ<EFBFBD> <CDBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ
378) 2011.3.1
378.1) acl_aio_write.c: acl_aio_vfprintf(), <20> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstring_memcpy(),
<EFBFBD> ú<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᵼ<EFBFBD> <EFBFBD> valgrind <20> <> <EFBFBD> <EFBFBD> ˵<EFBFBD> <CBB5> <EFBFBD> ڴ<EFBFBD> <DAB4> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ acl_vstring_memmove()
377) 2011.2.26-27
377.1) acl_aio: <20> <> ǿ<EFBFBD> <C7BF> <EFBFBD> ݴ<EFBFBD> <DDB4> Լ<EFBFBD> <D4BC> <EFBFBD> ׳ <EFBFBD> <D7B3>
376) 2011.2.23
376.1) feature: acl_ioctl_app_main.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˵<EFBFBD> <CBB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <D3B5> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> Ԥ<EFBFBD> ȵ<EFBFBD> <C8B5> <EFBFBD> <EFBFBD> û<EFBFBD>
<EFBFBD> ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <EFBFBD> <EFBFBD>
375) 2011.2.17
375.1) feature: acl_mylog.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (TCP, UNIX) <20> <> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ϣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ´ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־
374) 2011.2.16
374.1) bugfix: acl_mylog.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ̼߳<DFB3> <CCBC> <EFBFBD> ־ʱ<D6BE> <CAB1> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ <C4A3> <CABD> û<EFBFBD> м<EFBFBD> <D0BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɳ<EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
373) 2011.2.15
373.1) bugfix: acl_mylog.c, <20> п<EFBFBD> <D0BF> ܻ<EFBFBD> <DCBB> <EFBFBD> <EFBFBD> ɺ<EFBFBD> <C9BA> <EFBFBD> ѭ<EFBFBD> <D1AD> Ƕ<EFBFBD> <EFBFBD> <D7B5> õ<EFBFBD> <C3B5> <EFBFBD> <EFBFBD> <EFBFBD> .
373.2) acl_aio_server.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˿<EFBFBD> <CBBF> Ʋ<EFBFBD> <C6B2> <EFBFBD> aio_quick_abort, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ<EFBFBD> <D6B5>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> з<EFBFBD> 0<> <30> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> ˳<EFBFBD> ʱ<EFBFBD> <CAB1> aio <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> Ĭ<EFBFBD> <C4AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> 0
373.3) acl_ioctl_server.c: <20> <> ioctl_quick_abort <20> <> Ĭ<EFBFBD> <C4AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ<EFBFBD> <D6B5> Ϊ 1
372) 2011.2.14
372.1) bugfix: acl_mylog.c, <20> <> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> ־<EFBFBD> е <EFBFBD> ǰ<C7B0> <D7BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> ÿո <C3BF> <D5B8> ֿ<EFBFBD> <D6BF> <EFBFBD> <EFBFBD> <EFBFBD>
֧<EFBFBD> <EFBFBD> syslog-ng <20> <> $PROGRAM <20> <>
371) 2011.2.9
371.1) feature: acl_mylog.c, ֧<> <D6A7> <EFBFBD> <EFBFBD> syslog-ng <20> <> <EFBFBD> ϼ<EFBFBD> ¼<EFBFBD> <C2BC> ־<EFBFBD> <D6BE> ʽ
370) 2011.1.27
370.1) bugfix: acl_vstring.c, acl_buffer_gets/acl_buffer_gets_nonl <20> <>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> а <EFBFBD> <EFBFBD> <EFBFBD> \n ʱû<CAB1> н<EFBFBD> <D0BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݲ<EFBFBD> \0
369) 2011.1.26
369.1) acl_mylog.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> ־<EFBFBD> м<EFBFBD> ¼<EFBFBD> ߳<EFBFBD> ID<49> ţ<EFBFBD> Ĭ<EFBFBD> <C4AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼
368) 2011.1.25
368.1) acl_mylog.c: ȥ<> <C8A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־<EFBFBD> <D6BE> pri(<28> <> ʾ Ȩ<CABE> <C8A8> ) <20> ļ<EFBFBD> ¼<EFBFBD> <C2BC>
367) 2011.1.24
367.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_trace.c <20> <> <EFBFBD> ڴ<EFBFBD> ӡ<EFBFBD> <D3A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> ջ<EFBFBD> <D5BB> Ϣ<EFBFBD> <CFA2> Ŀ<EFBFBD> <C4BF> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD>
367.2) feature: acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> ̱<EFBFBD> <CCB1> л<EFBFBD> Ϊ<EFBFBD> <CEAA> ͨ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> core <20> ļ<EFBFBD> ,
<EFBFBD> <EFBFBD> Ӧ<EFBFBD> أ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_master<EFBFBD> ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> bool <20> <> <EFBFBD> ͵<EFBFBD> <CDB5> <EFBFBD> <EFBFBD> <EFBFBD> ѡ <EFBFBD> <D1A1> <EFBFBD> <EFBFBD> <EFBFBD> £<EFBFBD>
ioctl_enable_core/aio_enable_core/trigger_enable_core/single_enable_core
/multi_enable_core
367.3) bugfix: acl_dbpool_mysql.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> <CAA7> ʱ<EFBFBD> <CAB1> <EFBFBD> ڴ<EFBFBD> й¶<D0B9> <C2B6> <EFBFBD> <EFBFBD>
366) 2011.1.21
366.1) acl_init.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_version/1 <20> <> <EFBFBD> <EFBFBD> ˵<EFBFBD> <CBB5> <EFBFBD> <EFBFBD> ǰACL<43> İ汾<C4B0> <E6B1BE>
366.2) bugfix: acl_dbpool_mysql.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӵĹ<D3B5> <C4B9> ܺ<EFBFBD> <DCBA> <EFBFBD> db_before_connect<63> <74> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
365) 2011.1.18
365.1) samples: master_notify, <20> <> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> ڽ<EFBFBD> <DABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 쳣<EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
365.1) master: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> <EFBFBD> <EFBFBD> 쳣<EFBFBD> ˳<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <CFA2> <EFBFBD> <EFBFBD>
364) 2011.1.10
364.1) feature: acl_dbpool.h, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> ֮ǰ<D6AE> Ļص<C4BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> <C3A3> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> һ Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
363) 2010.12.31
363.1) bugfix: acl_dbpool_mysql.c, <20> ڵ<EFBFBD> <DAB5> <EFBFBD> __dbpool_mysql_destroy ʱ<> <CAB1> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD>
mysql_library_end(), <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й¶
363.2) sample: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> dbpool <20> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <DDBF> <EFBFBD> <EFBFBD> ӳع<D3B3> <D8B9> <EFBFBD>
363.3) feature: db/mysql: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> MYSQL<51> <4C> <EFBFBD> <EFBFBD> <EFBFBD> ж϶<D0B6> <CFB6> <EFBFBD> ѯʧ<D1AF> <CAA7> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> Թ<EFBFBD> <D4B9> <EFBFBD>
362) 2010.12.28
362.1) bugfix: <20> <EFBFBD> <DEB8> <EFBFBD> src/unit_test <20> <> <EFBFBD> ڴ<EFBFBD> й¶<D0B9> <C2B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
361) 2010.12.13
361.1) acl_xml_parse.c: acl_xml_parse <20> <> <EFBFBD> <EFBFBD> Ϊ acl_xml_update <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD>
361.2) acl_base64.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԼӸı <D3B8>
360) 2010.12.7
360.1) feature: acl_vstring.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstring_memmove()/3 <20> <> <EFBFBD> <EFBFBD>
359) 2010.11.29
359.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_utf8_to_big5/acl_big5_to_utf8,
acl_utf8_to_unicode/acl_unicode_to_utf8,
acl_gb2312_to_big5/acl_big5_to_gb2312,
acl_hz_to_gb2312/acl_gb2312_to_hz <20> ַ<EFBFBD> <D6B7> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
358) 2010.11.16
358.1) bugfix: acl_array.c, acl_stack.c <20> <> ʹ <EFBFBD> <CAB9> acl_foreach() <20> <>
ʱ<EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> ʱ<EFBFBD> <CAB1> Ȼ<EFBFBD> <C8BB> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> Ԫ<EFBFBD> ط<EFBFBD> <D8B7> <EFBFBD>
357) 2010.11.15
357.1) feature: ACL_ARGV(acl_argv.c/acl_argv.h),
ACL_ARRAY(acl_array.c/acl_array.h),
ACL_FIFO(acl_fifo.c/acl_fifo.h),
ACL_STACK(acl_stack.c/acl_stack.h) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> push_back/push_front,
pop_back/pop_front <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӿ<EFBFBD>
357.2) aio: <20> <> <EFBFBD> ¹<EFBFBD> <C2B9> <EFBFBD>
356) 2010.11.2
356.1) compile: <20> <> WIN32<33> ±<EFBFBD> <C2B1> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <C3BF> <EFBFBD> <EFBFBD> <EFBFBD> ̵<EFBFBD> .pdb<64> ļ<EFBFBD> ָ<EFBFBD> <D6B8>
355) 2010.10.28
355.1) bugfix: acl_base64.c, acl_vstring_base64.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <C3B5> Ľ<EFBFBD> <C4BD> <EFBFBD> <EFBFBD> <EFBFBD>
Ϊ 128 <20> ֽڵ<D6BD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> char ֵ<> <D6B5> <EFBFBD> <EFBFBD> 128 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ܻ<EFBFBD> <DCBB> <EFBFBD> <EFBFBD> <EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
(<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щbase64<36> ķǷ<C4B7> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> п<EFBFBD> <D0BF> ܻ<EFBFBD> <DCBB> <EFBFBD> <EFBFBD> <EFBFBD> ), <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڽ<EFBFBD> <DABD> <EFBFBD> <EFBFBD> ij<DEB8>
255 <20> ֽڵĽ<DAB5> <C4BD> <EFBFBD> <EFBFBD> <EFBFBD>
355.2) compile: StdAfx.h <20> <> #include <limit.h> <20> <> Ϊͨ<CEAA> õ<EFBFBD> ϵͳͷ
354) 2010.9.19
354.1) bugfix: acl_vstream.c, acl_vstream_gets_nonl() û<> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ACL_VSTREAM_FLAG_TAGYES / ACL_VSTREAM_FLAG_TAGNO <20> <> ־λ
353) 2010.9.16
353.1) bugfix: acl_debug.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_debug_end() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڳ<EFBFBD> <DAB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ
<EFBFBD> ͷ<EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD>
353.2) acl_mystring.h: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> strcasecmp <20> Ⱥ<EFBFBD> <C8BA> <EFBFBD> <EFBFBD> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> 궨<EFBFBD> <EAB6A8>
352) 2010.8.4
352.1) compile: <20> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> <EFBFBD> AS3, AS4 <20> ϵı <CFB5> <C4B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
351) 2010.7.21
351.1) bugfix: acl_token_tree.c, acl_token_tree_create() <20> <> 485 <20> <>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> argv <20> ڴ<EFBFBD> û<EFBFBD> б <EFBFBD> <D0B1> ͷ<EFBFBD>
350) 2010.7.11
350.1) xml: acl_xml_parse.c xml_parse_left_tag() <20> <EFBFBD> , <20> Ը<EFBFBD> <D4B8> õ<EFBFBD> ֧<EFBFBD> <D6A7>
<br/> <20> <> <br /> <20> <> ʽ
349) 2010.6.9
349.1) ֧<> <D6A7> gcc <20> <> Ԥ<EFBFBD> <D4A4> <EFBFBD> 뷽ʽ , ʹ <> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> ٶȴ<D9B6> Լ<EFBFBD> <D4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB>
348) 2010.6.8
348.1) ֧<> <D6A7> vc2003 <20> <> Ԥ<EFBFBD> <D4A4> <EFBFBD> 뷽ʽ <EBB7BD> <CABD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> ٶȴ<D9B6> <C8B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
347) 2010.6.27-7.6
347.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> xml Ŀ¼, <20> <> <EFBFBD> ڽ<EFBFBD> <DABD> <EFBFBD> xml <20> <> html <20> ļ<EFBFBD> , <20> ý<EFBFBD> <C3BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> "״̬<D7B4> <CCAC> "<22> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֽ<F2B2BFB7> <D6BD> <EFBFBD> , <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <CABD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ ͨѶ; ͬʱ<CDAC> ÿ<C3BF> ṩ<EFBFBD> <E1B9A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> javascript <20> ļ<C4BC> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD> .
ע: Ŀǰ<C4BF> ÿ<C3BF> <E2BBB9> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> ֪<EFBFBD> <D6AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> :
a) <20> <> doctype <20> <> <EFBFBD> <EFBFBD> ֧<EFBFBD> ֲ<EFBFBD> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD>
b) <20> <> xml <20> <> ʼ ʱ<CABC> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ݽ<EFBFBD> <DDBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> Ӹ<EFBFBD> <D3B8> <EFBFBD> <E0B9A6>
347.2) bugfix: acl_vstream.c 340 <20> е <EFBFBD> <D0B5> <EFBFBD> snprintf ʱ<> <CAB1> <EFBFBD> <EFBFBD> ebuf <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʼ <EFBFBD> <EFBFBD> , <20> ҿ<EFBFBD> valgrind <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˴ <EFBFBD> <CBB4> <EFBFBD>
347.3) acl_ring.c: acl_ring_detach <20> <> , ԭ<> <D4AD> <EFBFBD> Ὣij<E1BDAB> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ring->succ <20> <>
ring->pred <20> <> <EFBFBD> <EFBFBD> NULL, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_ring_init ֮<> <D6AE> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ, <20> <>
<EFBFBD> <EFBFBD> ring->succ, ring->pred, ring->parent <20> <> Ϊ<EFBFBD> Լ<EFBFBD> , ͬʱ<CDAC> <CAB1> ring->len <20> <> 0
346) 2010.6.13
346.1) feature: code/acl_gbcode.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_gb2312_to_utf8()/4 <20> <>
acl_utf8_to_gb2312()/4 <20> <> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA>
345) 2010.6.8
345.1) feature: acl_vstream.c, acl_vstream_unread <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݳ<EFBFBD> <DDB3> <EFBFBD> <EFBFBD> Զ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ·<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ռ <EFBFBD> <EFBFBD> Ա<EFBFBD> ֤<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܹ<EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> <EFBFBD> <EFBFBD> Ż<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ; acl_vstream_ungetc ͨ<> <CDA8> <EFBFBD> ڲ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_unread <20> <> <EFBFBD> <EFBFBD> ֤<EFBFBD> <D6A4> <EFBFBD> ݿ϶<DDBF> <CFB6> ܱ<EFBFBD> <DCB1> <EFBFBD> д
344) 2010.5.6
344.1) feature: acl_vstream.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_unread <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> Ѿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ·Ż<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
343) 2010.4.17
343.1) bugfix: events_poll.c/events_select_thr.c/events_poll_thr.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 342.1 <20> <> ʾ <EFBFBD> <CABE> <EFBFBD> ⣬ͳһ <CDB3> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
342) 2010.4.11
342.1) bugfix: events_select.c, event_loop() <20> е <EFBFBD> event_prepare() <20> <> <EFBFBD> <EFBFBD> 0
<EFBFBD> <EFBFBD> eventp->fdcnt_ready > 0 ʱ<> <CAB1> <EFBFBD> <EFBFBD> Ϊ goto TAG_DONE <20> <> <EFBFBD> <EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> for
ѭ<EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> xmask/rmask/wmask <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ԥ֪<D4A4> <D6AA> <EFBFBD> <EFBFBD> <EFBFBD> ⣬
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> goto TAG_DONE <20> <> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĸ<EFBFBD> <C4B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD> ʼ nready/xmask/rmask/wmask,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <EFBFBD> ʼ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ѳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> goto <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ե<EFBFBD> ʣ<EFBFBD> <CAA3> <EFBFBD> <EFBFBD> <EFBFBD> goto
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȷʵӦ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> :)
341) 2010.3.31
341.1) bugfix: events_epoll.h/events_kernel.c, <20> <> Linux <20> £<EFBFBD> epoll
<EFBFBD> <EFBFBD> EPOLL_CTL_DEL ʹ <> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
340) 2010.3.24
340.1) feature: acl_htable.c, <20> <> <EFBFBD> <EFBFBD> ACL_HTABLE_FLAG_MSLOOK <20> <> ־λ<D6BE> <CEBB>
<EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> acl_htable_create <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϣ<EFBFBD> <CFA3> ʱ<EFBFBD> ˱<F2BFAAB4> ־λ<D6BE> <CEBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> в<EFBFBD> ѯʱ<EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <EFBFBD> <EFBFBD> Ľ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> λ<EFBFBD> ÷<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȴ<EFBFBD> λ<EFBFBD> <EFBFBD>
340.2) <20> <> acl_init.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32ƽ ̨<C6BD> µ<EFBFBD> ws2_32.lib <20> <>
wsock32.lib <20> <> ֱ<EFBFBD> <D6B1> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> <C3A3> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ã<EFBFBD> <C3A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
339) 2010.3.6--2010.3.17
339.1) feature: <20> <> WIN32ƽ ̨<C6BD> £<EFBFBD> event <20> ¼<EFBFBD> ģ<EFBFBD> <C4A3> ֧<EFBFBD> <D6A7> iocp <20> ӿڷ<D3BF> ʽ ,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL <20> <> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> ֧<EFBFBD> ֡<EFBFBD> WIN32(vc2003<30> <33> <EFBFBD> <EFBFBD> )/LINUX/BSD/SOLARIS
<EFBFBD> ĸ<EFBFBD> ƽ ̨<EFBFBD> µ<EFBFBD> <EFBFBD> ں˼<EFBFBD> <EFBFBD> <EFBFBD> IO<EFBFBD> <EFBFBD> ʽ
339.2) samples: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> http_aio <20> <> <EFBFBD> <EFBFBD>
338) 2010.3.5
338.1) bugfix: acl_dbpool_mysql.c->__dbpool_mysql_destroy() <20> <> һ <EFBFBD> <D2BB> <EFBFBD> ڴ<EFBFBD>
й¶(<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_array_destroy(mysql_pool->handles, NULL))<29> <> <EFBFBD> ˴ <EFBFBD> <CBB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ջԷ<EFBFBD> <EFBFBD> <EFBFBD>
338.2) acl_dns.c: <20> <> jaws <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> mod_http.so ģ<> 飬<EFBFBD> <E9A3AC> Ϊ<EFBFBD> Ƕ<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> أ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> Ե<EFBFBD> <EFBFBD> <EFBFBD> dns_lookup_timeout() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> jaws <20> к<EFBFBD> mod_http.so <20> Dz<EFBFBD> һ <EFBFBD> <D2BB>
<EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_dns.c <20> <> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_aio_cancel_timer() ȡ<> <C8A1> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ȡ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> dns_lookup_timeout() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> ֱַ<D6B7> Ӹ<EFBFBD> <D3B8> <EFBFBD>
ACL_DNS.lookup_timeout <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͱ<EFBFBD> ֤<EFBFBD> <D6A4> <EFBFBD> <EFBFBD> mod_http.so <20> <> <EFBFBD> <EFBFBD> <EFBFBD> пռ <D0BF> <D5BC> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_aio_request_timer <20> е IJ<D0B5> <C4B2> <EFBFBD> ֮<EFBFBD> <D6AE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> jaws <20> <> <EFBFBD> <EFBFBD> <EFBFBD> пռ <D0BF> <D5BC> ڵ<EFBFBD> <DAB5> <EFBFBD>
acl_aio_cancel_timer <20> е IJ<D0B5> <C4B2> <EFBFBD> ֮<EFBFBD> <D6AE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> һ <EFBFBD> µ<EFBFBD>
337) 2010.3.2
337.1) bugfix: events_kernel.c/events_kernel2.c/events_kernel3.c <20> ĺ<EFBFBD> <C4BA> <EFBFBD>
event_loop() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> EVENT_TEST_ERROR <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 룬<EFBFBD> <EBA3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֳ<EFBFBD> <D6B3> <EFBFBD> ʱ
epoll/devpoll <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> ֵij<D6B5> <C4B3> <EFBFBD> ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> μ<EFBFBD> <CEBC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <C3BF> Դ<EFBFBD> <D4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
336) 2010.2.23-2.24
336.1) performance: events_kernel.c <20> <> һ <EFBFBD> <D2BB> <EFBFBD> Ż<EFBFBD> <C5BB> ˴ <EFBFBD> <CBB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : <20> <> <EFBFBD> ڳ<EFBFBD> ʱ<EFBFBD> <CAB1>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> <EFBFBD> ɨ<EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> ʽ ; <20> <> <EFBFBD> <EFBFBD> /д<> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӷ<EFBFBD> <D3B7> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> ȫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> ÷<EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӱȽ϶<C8BD> ʱ<EFBFBD> <CAB1> ÿ
<EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> ѭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫȫ<EFBFBD> <EFBFBD> ɨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 飬<EFBFBD> 鿴<EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
336.2) <20> <> Ȼ<EFBFBD> <C8BB> <EFBFBD> <EFBFBD> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD> events_kernel.c<> <63> ֻ<EFBFBD> <D6BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ events_kernel2.c,
events_kernel3.c<> <63> <EFBFBD> Ա<EFBFBD> <D4B1> <EFBFBD> <EFBFBD> <EFBFBD> (˭֪<CBAD> <D6AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> أ<EFBFBD> )
335) 2010.2.11
335.1) acl_aio_read.c: acl_aio_enable_read() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> жϻ<D0B6> <CFBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> ӻص<D3BB>
<EFBFBD> û<EFBFBD> <EFBFBD> Ļص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
334) 2010.2.9
334.1) bugfix: acl_dns.c, acl_add_dns_host() <20> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӿ<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD> IP<49> б <EFBFBD> ʱ
<EFBFBD> д<EFBFBD> <EFBFBD> <EFBFBD>
333) 2010.2.8
333.1) feature: acl_dns.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 鹦<EFBFBD> <E9B9A6>
332) 2010.2.5
332.1) events_select.c, events_poll.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> events_kernel.c <20> е ķ<D0B5> ʽ
<EFBFBD> <EFBFBD> д
331) 2010.2.4
331.1) bugfix: events_kernel.c <20> <EFBFBD> <DEB8> <EFBFBD> һ ЩBUGS, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ر<EFBFBD> ʱ<EFBFBD> <CAB1> ɾ<EFBFBD> <C9BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
331.2) feature: acl_vstream.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_call_close_handles()/1
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <EFBFBD> <EFBFBD> ùرջص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> events_kernels.c
330) 2010.1.25 -- 2010.2.3
330.1) event/: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> epoll/kqueue/devpoll <20> <> Ϊ<EFBFBD> <CEAA> Ч<EFBFBD> <D0A7> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> 棬<EFBFBD> <E6A3AC>
ԭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> event_kernel.c <20> <> <EFBFBD> <EFBFBD> Ϊ event_kernel2.c, <20> µ<EFBFBD> <C2B5> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ
event_kernel.c
330.2) bugfix: acl_access.c/acl_access_permit() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> Ϊ
IP:PORT/IP <20> <> ʽ
330.3) acl_vstream.c: acl_vstream_close() <20> <> event_kernel.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
֧<EFBFBD> <EFBFBD> <EFBFBD> ӳٹرչ<EFBFBD> <EFBFBD> <EFBFBD>
330.4) aio/: acl_aio.c, aio_callback.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7>
ACL_ASTREAM.stream <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӳٹر<D9B9> ; aio_callback.c <20> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> رջص<D5BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD>
-1 <20> <> ֹͣ<CDA3> <D6B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> رջص<D5BB>
329) 2010.1.24
329.1) aio/: acl_aio_disable_readwrite, acl_aio_disable_read,
acl_aio_disable_write <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> ж<EFBFBD> <D0B6> <EFBFBD> <EFBFBD> <EFBFBD>
328) 2010.1.22
328.1) bugfix: acl_vstream.c, acl_vstream_readn_peek() <20> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
328.2) bugfix: acl_aio.c, acl_aio_open() <20> ڶԼ<DAB6> <D4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ö<EFBFBD> <C3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С ʱ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ǵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> ԭ<EFBFBD> <EFBFBD> <EFBFBD> ǣ<EFBFBD> if ((stream->type ACL_VSTREAM_TYPE_LISTEN))<29> <>
Ӧ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> if ((stream->type & ACL_VSTREAM_TYPE_LISTEN))<29> <> ͬʱ<CDAC> <CAB1>
stream->read_buf <20> ǿ<EFBFBD> ʱ<EFBFBD> <CAB1> stream->read_buf_len <20> Dz<EFBFBD> <C7B2> ܱ<EFBFBD> <DCB1> ĵ<DEB8>
327) 2010.1.19
327.1) acl_pthread.h: ACL_PTHREAD_ONCE_INIT <20> <> solaris <20> <> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> Ϊ
{ PTHREAD_ONCE_INIT }, ֻ<> <D6BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ſ <EFBFBD> <C5BF> <EFBFBD> <EFBFBD> <EFBFBD> solaris <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> :
static acl_pthread_once_t once_control = ACL_PTHREAD_ONCE_INIT;
327.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƽ ̨<C6BD> ϱ <EFBFBD> <CFB1> <EFBFBD> ͨ<EFBFBD> <CDA8>
326) 2010.1.18
326.1) acl_dns.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˻<EFBFBD> <CBBB> 湦<EFBFBD> <E6B9A6> (ʹ <> <CAB9> <EFBFBD> <EFBFBD> acl_cache2.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> <EFBFBD> ӿ<EFBFBD> )
325) 2010.1.17
325.1) acl_cache2.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> ܲ<EFBFBD> <DCB2> <EFBFBD> <DEB8> <EFBFBD> һ Щ bugs
325.2) samples: cache2/
324) 2010.1.16
324.1) <20> <> acl_idns.c <20> <> <EFBFBD> <EFBFBD> Ϊ acl_dns.c, acl_idns.h <20> <> <EFBFBD> <EFBFBD> Ϊ acl_dns.h, <20> <>
ACL_DNS_EVENT <20> <> <EFBFBD> <EFBFBD> Ϊ ACL_DNS_REQ
324.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_cache2.c ģ<> <C4A3> , <20> ú<EFBFBD> <C3BA> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> ù<EFBFBD> ϣ<EFBFBD> <CFA3> <EFBFBD> <EFBFBD> ƽ <EFBFBD> <C6BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> ṩ<EFBFBD> <EFBFBD> acl_cahce.c (<28> <> <EFBFBD> ù<EFBFBD> ϣ<EFBFBD> <CFA3> <EFBFBD> <EFBFBD> ˫<EFBFBD> <CBAB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϸ<EFBFBD> ʽ ) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> <D0A7>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƻ<EFBFBD> <EFBFBD> <EFBFBD>
323) 2010.1.15
323.1) feature: acl_idns.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽DNS<4E> <53> ѯ<EFBFBD> <D1AF> <EFBFBD> ܼ<EFBFBD> <DCBC> <EFBFBD> <EFBFBD> ع<EFBFBD> <D8B9> ܺ<EFBFBD> <DCBA> <EFBFBD> ; <20> ú<EFBFBD> <C3BA> <EFBFBD> <EFBFBD> <EFBFBD>
֧<EFBFBD> <EFBFBD> DNS<EFBFBD> <EFBFBD> ѯ<EFBFBD> Ķ<EFBFBD> ̬ƽ <EFBFBD> <EFBFBD> ܼ<EFBFBD> DNS<EFBFBD> <EFBFBD> ַ<EFBFBD> <EFBFBD> Ч<EFBFBD> <EFBFBD> У <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
323.2) bugfix: rfc1035.c(<28> <> squid<69> <64> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Դ<EFBFBD> <D4B4> ) <20> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> ܷ<EFBFBD> <DCB7> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й¶
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
323.3) samples: idns/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> DNS<4E> 첽<EFBFBD> <ECB2BD> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> DNS<4E> <53> <EFBFBD> <EFBFBD>
322) 2010.1.14
322.1) acl_aio_connect.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˲<EFBFBD> <CBB2> <EFBFBD> <EFBFBD> <EFBFBD> ִ<EFBFBD> <D6B4> ˳<EFBFBD> <CBB3>
322.2) master/template/: <20> <> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> ʹ <EFBFBD> õ<EFBFBD> argv <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ΪС д
321) 2010.1.13
321.1) bugfix: aio_callback.c, <20> ڵ<EFBFBD> <DAB5> ùرջص<D5BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ֻҪ<D6BB> <D2AA> һ <EFBFBD> <D2BB> <EFBFBD> ص<EFBFBD> <D8B5> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> -1 <20> <> Ӧ<EFBFBD> <D3A6> ֹͣ<CDA3> <D6B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʣ<EFBFBD> <CAA3> <EFBFBD> Ĺرջص<D5BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD>
320) 2010.1.7
320.1) bugfix: acl_pthread.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<CCBE> <D6B2> 洢<EFBFBD> <E6B4A2> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,
<EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> õ<EFBFBD> <EFBFBD> ˵<EFBFBD> <EFBFBD> 㷨<EFBFBD> к<EFBFBD> <EFBFBD> <EFBFBD> acl_myxxx <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ䷽ʽ
320.2) feature: private_fifo.c Ϊ<> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˼<EFBFBD> <CBBC> <EFBFBD> <EFBFBD> ӿ<EFBFBD>
320.3) acl_vstream_popen.h: Ϊ<> <CEAA> <EFBFBD> <EFBFBD> win32 ƽ ̨<C6BD> <CCA8> <EFBFBD> Զ<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> ط<EFBFBD> ʽ ʹ <CABD> <CAB9> <EFBFBD> <EFBFBD> Щ
<EFBFBD> ӿڣ<EFBFBD> ǰ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˵<EFBFBD> <EFBFBD> 뵼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־ ACL_API
320.4) win32 <20> <> <EFBFBD> 빤<EFBFBD> <EBB9A4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
320.5) acl_aio_listen.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ش<EFBFBD> <D8B4> <EFBFBD> ʱ<EFBFBD> <CAB1> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> <D6B1> fatal, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ˯<EFBFBD> <EFBFBD> 1 <20> <> Ȼ<EFBFBD> <C8BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
319) 2010.1.6
319.1) acl_aio_listen.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> <EFBFBD> <EFBFBD> ʾ <EFBFBD> <CABE> <EFBFBD> <EFBFBD>
318) 2010.1.5
318.1) feature: acl_mem_slice.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_mem_slice_delay_destroy <20> ӿ<EFBFBD> ,
<EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> ˳<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Լ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> Ƭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> ռ <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> ý<EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> ̲߳<EFBFBD> <EFBFBD> <EFBFBD>
Ӳ<EFBFBD> <EFBFBD> <EFBFBD> ͷű<EFBFBD> ռ <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> <EFBFBD> <EFBFBD> ͷŷ<EFBFBD> ռ <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> Ƭ<EFBFBD> <EFBFBD> ͬʱ<EFBFBD> <EFBFBD> ʣ<EFBFBD> ౻ռ <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> Ƭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> ֵĴ<EFBFBD> <EFBFBD> ͷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̻߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̵߳<EFBFBD> <EFBFBD> <EFBFBD> acl_mem_slice_delay_destroy
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
317) 2010.1.4
317.1) bugfix:
acl_aio_read.c/acl_aio_write.c/acl_aio_connect.c/aio_callback.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ľ<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> п<EFBFBD> <EFBFBD> ܻ<EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> ݹ<EFBFBD> Ƕ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɻص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> ص<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> ½<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> з<EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⷢ<EFBFBD> <EFBFBD>
316) 2010.1.2
316.1) acl_aio.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˺<EFBFBD> <CBBA> <EFBFBD> <EFBFBD> ӿ<EFBFBD> ע<EFBFBD> <D7A2> ; <20> <EFBFBD> <DEB8> ˲<EFBFBD> <CBB2> ֽӿ<D6BD> <D3BF> <EFBFBD> <EFBFBD> ƣ<EFBFBD> ʹ ֮<CAB9> <D6AE> <EFBFBD> <EFBFBD> <D7B6> <EFBFBD>
316.2) acl_aio.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_aio_enable_write <20> ӿ<EFBFBD>
315) 2010.1.1
315.1) acl_aio.c: <20> <EFBFBD> <DEB6> <EFBFBD> <EFBFBD> ϴ<EFBFBD> <CFB4> <EFBFBD> ʱ<EFBFBD> <CAB1> acl_aio_read.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> һ <EFBFBD> <D2BB> BUG
315.2) acl_aio.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_aio_enable_read <20> <> <EFBFBD> <EFBFBD>
314) 2009.12.31
314.1) acl_aio.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> ӿڣ<D3BF> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
314.2) acl_array.c: <20> <> <EFBFBD> <EFBFBD> acl_array_clean/acl_array_destroy <20> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> иĶ<D0B8>
313) 2009.12.25
313.1) bugfix: acl_vstream.c <20> <> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <CABD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> ֳ<EFBFBD> <D6B3> ó<EFBFBD> <C3B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
312) 2009.12.23
312.1) feature: acl_mem_slice.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ջ<EFBFBD> <D5BB> ƣ<EFBFBD> <C6A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ﵽ<EFBFBD> 涨<EFBFBD> <EFBFBD> ֵʱ<EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (ע<> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD>
<EFBFBD> ͷű<EFBFBD> <EFBFBD> ̷߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> Դ)
312.2) compile: BSD ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
311) 2009.12.19-12.20
311.1) performance&feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷź<CDB7> <C5BA> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ӿڣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڶ<EFBFBD> <EFBFBD> ߳̽<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> ij<EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͣ<EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> <EFBFBD> ߳<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
311.2) acl_aio_server.c/acl_aio_app_main.c: Ϊ<> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> ʣ<EFBFBD> <CAA3> ӿ<EFBFBD> <D3BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
310) 2009.12.18
310.1) feature: acl_slice.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_slice_pool_xxx ϵ<> й<EFBFBD> <D0B9> <EFBFBD>
309) 2009.12.17
309.1) feature&performance: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_mem_slice.c, <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> Ը<EFBFBD> Ч<EFBFBD> <D0A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD>
<EFBFBD> <EFBFBD> Ƭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> <EFBFBD> ڴ<EFBFBD>
308) 2009.12.16
308.1) performance: acl_vstream.c <20> е <EFBFBD> __bfread_cnt_ready <20> <> __bfread_ready
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֽڿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> 鿽<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> ʴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߣ<EFBFBD> <EFBFBD> ܴ<EFBFBD> Ӱ<EFBFBD> <EFBFBD> acl_aio_read()
<EFBFBD> <EFBFBD> acl_aio_readn() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҳ<EFBFBD> <D2B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
307) 2009.12.12
307.1) bugfix: acl_sys_file.c <20> е <EFBFBD> acl_file_fsize()/1 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> win32 ƽ ̨<C6BD> <CCA8> ,
<EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 64λ<EFBFBD> ļ<EFBFBD> ϵͳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> nHigh << 32 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> nHigh Ϊ DWORD
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܲ<EFBFBD> <EFBFBD> <EFBFBD> 32λ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
306) 2009.12.10-12.11
306.1) feature: acl_pthread.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_pthread_tls_get/acl_pthread_tls_set,
<EFBFBD> <EFBFBD> <EFBFBD> Ը<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ز<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , acl_pthread_tls_set_max/acl_pthread_tls_get_max,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> /<2F> <> <EFBFBD> <EFBFBD> acl_pthread_tls_get/acl_pthread_tls_set <20> <> <EFBFBD> õ<EFBFBD> <C3B5> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD>
ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊϵͳ<EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Կ<EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
306.2) acl <20> <> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȥ<EFBFBD> <C8A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> __thread <20> <> ʽ ʹ <CABD> <CAB9> <EFBFBD> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA>
ʹ <EFBFBD> ÷<EFBFBD> ʽ <EFBFBD> ڵ<EFBFBD> Ӧ<EFBFBD> ö<EFBFBD> ̬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl <20> <> ̬<EFBFBD> <CCAC> ʱ<EFBFBD> ᷢ<EFBFBD> <E1B7A2> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <C8B7> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> Ǿ<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD> acl
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl <20> <> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD> <F2B2BBBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣩; Ŀǰ<C4BF> <C7B0> <EFBFBD> м<EFBFBD> <D0BC> <EFBFBD> Դ<EFBFBD> ļ<EFBFBD> <C4BC> ﻹ<EFBFBD> <EFBBB9> __thread
<EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : zdb_dat_iter.c, zdb_key.c, acl_aio_app_main.c, acl_aio_server.c,
acl_ioctl_app_main.c, rfc1035.c, acl_meter_time.c, gettimeofday.c, Ӧ<> <D3A6> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9>
<EFBFBD> <EFBFBD> ЩԴ<EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĺ<EFBFBD> <EFBFBD> <EFBFBD> ʱһ <EFBFBD> <EFBFBD> ע<EFBFBD> ⲻҪ<EFBFBD> Զ<EFBFBD> ̬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl <20> <> ̬<EFBFBD> ⷽʽ ʹ <CABD> <CAB9> ֮
305) 2009.12.9
305.1) feature: acl_pthread.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_pthread_tls_get, acl_pthread_tls_set
<EFBFBD> ӿڣ<EFBFBD> ͬʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> win32 ƽ ̨<C6BD> µ<EFBFBD> acl_pthread_key_create, acl_pthread_getspecific,
acl_pthread_setspecific <20> ӿڣ<D3BF> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÷<EFBFBD> ʽ <EFBFBD> <CABD> UNIX <20> µ<EFBFBD> pthread_key_create,
pthread_getspecific, pthread_setspecific <20> <> ͬ, Ϊ<> ˱<EFBFBD> ֤<EFBFBD> <D6A4> ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9>
acl_xxx <20> <> ʽ ʹ <CABD> <CAB9> <EFBFBD> <EFBFBD> Щ<EFBFBD> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> ӿ<EFBFBD>
304) 2009.12.7-12.8
304.1) feature: acl_dll.c, <20> <> <EFBFBD> ڶ<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD>
304.2) bugifx: acl_netdb.c, acl_res.c res_util.c <20> ڲ<EFBFBD> <DAB2> õ<EFBFBD> <C3B5> <EFBFBD> inet_ntoa,
<EFBFBD> <EFBFBD> <EFBFBD> ú<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̷߳ǰ<EFBFBD> ȫ<EFBFBD> <EFBFBD> , ͳһ <CDB3> <D2BB> <EFBFBD> <EFBFBD> acl_inet_ntoa
303) 2009.12.6
303.1) acl_fifo.c: <20> <> Щ<EFBFBD> <D0A9> <EFBFBD> <EFBFBD> ʵ<EFBFBD> ֵ<EFBFBD> <D6B5> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> <EFBFBD>
302) 2009.12.3
302.1) bugfix: acl_vstring_sprintf(), <20> <> <EFBFBD> е <EFBFBD> fmt 64λ<34> <CEBB> ʽ <EFBFBD> ַ<EFBFBD> (<28> <> : llu)
<EFBFBD> <EFBFBD> VC6<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȷʶ<EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : UNIXƽ ̨<C6BD> <CCA8> llu/lld,<2C> <> <EFBFBD> <EFBFBD>
WIN32ƽ ̨<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> I64u/I64d. <20> <> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> ʹ <EFBFBD> <CAB9> acl_vstring_sprintf() ʱ<> <CAB1> ֻ<EFBFBD> <D6BB> Ҫ
ʹ <EFBFBD> <EFBFBD> ͳһ <EFBFBD> <EFBFBD> llu/lld <20> <> <EFBFBD> <EFBFBD>
302.2) feature: acl_getenv_list() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ի<EFBFBD> <D4BB> ñ<EFBFBD> <C3B1> <EFBFBD> <EFBFBD> ̵Ļ<CCB5> <C4BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD>
<EFBFBD> <EFBFBD> ʾ , <20> <> : name1=value1, name2=value2, name3=value3)
301) 2009.11.30--12.2
301.1) feature: acl_vstream_popen.c <20> <> <EFBFBD> <EFBFBD> ͬʱ֧<CAB1> <D6A7> UNIX<49> <58> WIN32ƽ ̨<C6BD> <CCA8>
301.2) feature: acl_env.c <20> <> <EFBFBD> <EFBFBD> ͬʱ֧<CAB1> <D6A7> UNIX<49> <58> WIN32ƽ ̨
300) 2009.11.27
300.1) feature: acl_sane_inet.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_ipv4_addr_valid()/1,
acl_ipv4_valid()/1 <20> <> <EFBFBD> <EFBFBD> , <20> ñ<EFBFBD> <C3B1> ж<EFBFBD> <D0B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> Ƿ<EFBFBD> <C7B7> <EFBFBD> Ч
300.2) acl_aio_connect.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> <CBB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> Ч<EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> <EFBFBD> жϹ <D0B6> <CFB9> <EFBFBD>
299) 2009.11.25
299.1) bugfix: acl_aio.c, acl_aio_iocp_close()/1 <20> <> astream->stream = NULL ʱ,
Ӧ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_AIO_FLAG_IOCP_CLOSE <20> <> ־λ, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й¶
298) 2009.11.24
298.1) acl_sane_socket.c: <20> <> <EFBFBD> <EFBFBD> acl_getsockname/acl_getpeername ȡ<> õ<EFBFBD> ַʱ<D6B7> <CAB1> <EFBFBD> ˿<EFBFBD>
<EFBFBD> <EFBFBD> Ҳ<EFBFBD> ӽ<EFBFBD> ȥ<EFBFBD> <EFBFBD>
297) 2009.11.23
297) ACL_ITER: <20> <> <EFBFBD> <EFBFBD> ͨ<EFBFBD> ñ<EFBFBD> <C3B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ľӿڷ<D3BF> <DAB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͵<EFBFBD> const <20> <EFBFBD> <DEB6> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD>
Ӧ<EFBFBD> ò<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> صĶ<EFBFBD> <EFBFBD> <EFBFBD>
297.2) acl_fifo.c: <20> <> <EFBFBD> <EFBFBD> acl_fifo_push()/2 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ´ <EFBFBD> <C2B4> <EFBFBD> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD> Ԫ<EFBFBD> ض<EFBFBD> <D8B6> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> 沢<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ö<EFBFBD> <EFBFBD> <EFBFBD>
296) 2009.11.22
296.1) bugfix: strcasestr.c, acl_strcasestr()/2 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> bug
296.2) feature: acl_inet_listen.c, acl_inet_accept_ex <20> д洢<D0B4> ͻ<EFBFBD> <CDBB> ˵<EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD>
ipbuf ԭ<> <D4AD> <EFBFBD> <EFBFBD> <EFBFBD> 洢 IP <20> <> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> ڿ<EFBFBD> <DABF> <EFBFBD> ͬʱ<CDAC> 洢<EFBFBD> ˿ں<CBBF> <DABA> ˣ<EFBFBD> <CBA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ipbuf <20> <> <EFBFBD> <EFBFBD>
<EFBFBD> 洢<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : ip:port, <20> <> : 192.168.0.1:80
295) 2009.11.20
295.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_dll.h ͷ<> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> dll ֮<> 䴫<EFBFBD> ݻ<EFBFBD> <DDBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
295.2) acl_debug_malloc.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> ½ӿڵ<D3BF> <DAB5> <EFBFBD>
295.3) bugfix: acl_aio_read.c, acl_aio_write.c,
READ_IOCP_CLOSE/WRITE_IOCP_CLOSE <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> ӱ<EFBFBD> ־λ ACL_AIO_FLAG_IOCP_CLOSE
294) 2009.11.19
294.1) bugfix: acl_inet_listen.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> <CAA7> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> ڴ<EFBFBD> й¶<D0B9> <C2B6> <EFBFBD> <EFBFBD>
294.2) bugfix: events_select_thr.c, event_enable_listen() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> ظ<EFBFBD> ʹ <EFBFBD> <CAB9>
ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊû<EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTREAM.fdp, <20> <> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <C3BF> <EFBFBD> <EFBFBD> event_enable_listen() <20> <> <EFBFBD> <EFBFBD>
һ <EFBFBD> ξͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> event_fdtable_alloc(), <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й¶. <20> <> bug <20> <> Ӱ<EFBFBD> 쵽
acl_ioctl.c, acl_ioctl_server.c <20> <> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й¶. <20> ϰ汾<CFB0> <E6B1BE> acl <20> <> acl_master
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µĶ<EFBFBD> <EFBFBD> ߳<EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܵ<EFBFBD> <EFBFBD> <EFBFBD> Ӱ<EFBFBD> 죬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> acl <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> е <EFBFBD> ioctl_event_mode ѡ <> <D1A1> <EFBFBD> <EFBFBD> Ϊ poll/kernel <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> Ϊ
<EFBFBD> <EFBFBD> ֻ<EFBFBD> <EFBFBD> Ӱ<EFBFBD> <EFBFBD> select <20> <> <EFBFBD> ̷߳<DFB3> ʽ .
293) 2009.11.16-18
293.1) acl_msgio: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ʋ<EFBFBD> <C6B2> <EFBFBD> <DEB8> <EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD>
293.2) bugfix: master/template/ Ŀ¼<C4BF> £<EFBFBD> acl_aio_server.c, aio_msg.c <20> <> <EFBFBD> <EFBFBD> һ Щ
<EFBFBD> <EFBFBD> Ϣ<EFBFBD> <EFBFBD> <EFBFBD> ݵ<EFBFBD> bug
292) 2009.11.15
292.1) ACL_VSTREAM <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> pid_t pid <20> <> Ա
291) 2009.11.13
291.1) compile: <20> <> Debian Linux ƽ ̨<C6BD> ±<EFBFBD> <C2B1> <EFBFBD> ͨ<EFBFBD> <CDA8>
290) 2009.11.12
290.1) samples: win32 -- code_map, <20> <> Ҫ<EFBFBD> <D2AA> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> ӳ<EFBFBD> <D3B3> <EFBFBD> <EFBFBD>
290.2) samples: win32 -- connect, <20> 첽<EFBFBD> <ECB2BD> <EFBFBD> Ӿ<EFBFBD> <D3BE> <EFBFBD>
290.3) acl_aio: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щʹ <D0A9> ýӿڣ<D3BF> ͬʱ<CDAC> <CAB1> ACL_ITER <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 룬ʹ <EBA3AC> <CAB9> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
289) 2009.11.10
289.1) feature: acl_file <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_fprintf, acl_vfprintf
289.2) feature: code/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> GBK<42> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : acl_gbcode
289.3) samples: jt2ft <20> <> <EFBFBD> ڲ<EFBFBD> <DAB2> Լ<EFBFBD> <D4BC> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA>
288) 2009.10.26
288.1) feature: acl_vstring <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_buffer_gets_nonl()/3,
acl_buffer_gets()/3; stdlib/common/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_token_tree ģ<> <C4A3>
288.2) compile: <20> <> LINUX/FREEBSD/SOLARIS/WIN32 ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
287) 2009.10.20
287.1) bugfix: acl_bits_map.h <20> е <EFBFBD> nmax Ϊ (unsigned int) -1 ʱ<> <CAB1> <EFBFBD> õ<EFBFBD> <C3B5> <EFBFBD>
(mask)->data_len = 0, <20> <> Ϊ<EFBFBD> ڼ<EFBFBD> <DABC> 㳤<EFBFBD> <E3B3A4> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ; acl_bits_map.h
<EFBFBD> <EFBFBD> ע<EFBFBD> Ͳ<EFBFBD> ̫<EFBFBD> <EFBFBD> ȷ
287.2) compile: <20> <> FreeBSD, Solaris, Windows <20> ϱ <EFBFBD> <CFB1> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> <D0A9> ֲ<EFBFBD> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
286) 2009.10.18
286.1) bugfix: ACL_CFG_INT64_TABLE.*target Ӧ<> <D3A6> Ϊ acl_int64 <20> <> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD> <EFBFBD> <EFBFBD> int <20> <> <EFBFBD> <EFBFBD>
286.2) compile: <20> <> <EFBFBD> <EFBFBD> VC<56> <43> <EFBFBD> 붯̬<EBB6AF> <CCAC> ʱ<EFBFBD> <CAB1> lib_acl <20> <> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> IPHlpApi.Lib
285) 2009.9.30
285.1) feature: acl_xinetd_params.c/acl_xinetd_params.h, acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_int64 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͵<EFBFBD> ֧<EFBFBD> <D6A7>
285.2) bugfix: zdb/zdb_private.h, <20> <> <EFBFBD> <EFBFBD> KEY_INODE, KEY_OFF <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
284) 2009.9.29
284.1) bugfix: acl_fhandle.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬Ӧ<E2A3AC> <D3A6> <EFBFBD> <EFBFBD>
acl_thread_mutex_lock/acl_thread_mutex_unlock,
acl_pthread_mutex_lock/acl_pthread_mutex_unlock <20> <> <EFBFBD> <EFBFBD> ʹ <EFBFBD> ã<EFBFBD> <C3A3> <EFBFBD> һ Щ<D2BB> ط<EFBFBD> <D8B7> <EFBFBD> <EFBFBD> ڻ<EFBFBD> <DABB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
284.2) zdb: zdb.h <20> 洢<EFBFBD> ṹ<EFBFBD> 涨Ϊ4<CEAA> ֽڶ<D6BD> <DAB6> <EFBFBD>
284.3) acl_cache.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ݴ<EFBFBD> <DDB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> Ϊ0
283) 2009.9.27
283.1) bugfix: acl_non_blocking() <20> ڲ<EFBFBD> <DAB2> <EFBFBD> BSDƽ ̨<C6BD> ¿<EFBFBD> <C2BF> ܻ<EFBFBD> <DCBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
282) 2009.9.25
282.1) zdb: Ϊ<> ˱<EFBFBD> ֤ zdb <20> <> <EFBFBD> ݽṹ<DDBD> <E1B9B9> 32λ<32> <CEBB> 64λ<34> <CEBB> <EFBFBD> Ͽ<EFBFBD> <CFBF> <EFBFBD> ֲ<EFBFBD> <D6B2> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9>
<EFBFBD> <EFBFBD> <EFBFBD> 洢<EFBFBD> ṹ<EFBFBD> <EFBFBD> 8<EFBFBD> ֽڶ<EFBFBD> <EFBFBD> 룬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ò<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> ֤<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
282.2) acl_slice: <20> Ż<EFBFBD> <C5BB> <EFBFBD> SLICE2 <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> ͷ<EFBFBD> <CDB7> ٶ<EFBFBD>
281) 2009.9.24
281.1) bugfix: acl_slice.c <20> е <EFBFBD> ACL_SLICE_FLAG_GC2 <20> 㷨<EFBFBD> <E3B7A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> BUG, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> ָ<EFBFBD> <D6B8> Խ<EFBFBD> <D4BD>
280) 2009.9.23
280.1) feature: zdb_key.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> zdb_key_init()/3 <20> ӿڣ<D3BF> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD> ʹ Ӧ<CAB9> <D3A6> Ԥ<EFBFBD> ȳ<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD> <EFBFBD> 洢
280.2) <20> <> win32 ƽ ̨<C6BD> µ<EFBFBD> BDB, OPENSSL <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȥ
279) 2009.9.21
279.1) feature: db/zdb, <20> <> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> dz<EFBFBD> <C7B3> <EFBFBD> Ч<EFBFBD> <D0A7> <EFBFBD> <EFBFBD> <EFBFBD> ּ<EFBFBD> <D6BC> 洢ϵͳ
279.2) bugfix: stdlib/sys/acl_sys_file.c, acl_file_fsize()/1 <20> <> win32ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
278) 2009.9.20
278.1) feature: net/acl_ifconf.c, <20> <> <EFBFBD> Ի<EFBFBD> <D4BB> <EFBFBD> UNIX/WIN32<33> <32> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ
277) 2009.9.15
277.1) bugfix: acl_cache.c, acl_cache_free()/1 <20> <> <EFBFBD> ͷŻ<CDB7> <C5BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ü<EFBFBD> <C3BC> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 0 <20> <> <EFBFBD> <EFBFBD> <DEB7> ͷŶ<CDB7> <C5B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <D1AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> ķ<EFBFBD> <C4B7> <EFBFBD> <EFBFBD> <EFBFBD> ǿ<EFBFBD> ƽ <EFBFBD> <C6BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ü<EFBFBD> <C3BC> <EFBFBD> <EFBFBD> <EFBFBD> 0
277.2) feature: acl_vbuf_print.c, ֧<> <D6A7> "%lld" <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> Ӷ<EFBFBD> acl_vstring.c Ҳ֧<D2B2> <D6A7>
"%lld" <20> <> ʽ
276) 2009.9.11
276.1) feature: event/acl_timer.c ֧<> <D6A7> ͨ<EFBFBD> õ<EFBFBD> ACL_ITER <20> <> <EFBFBD> <EFBFBD>
276.2) feature: ACL_ITER ֧<> <D6A7> acl_iter_info()/2 ȡ<> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> Ա<EFBFBD> <D4B1> <EFBFBD> <EFBFBD>
275) 2009.9.10
275.1) feature: ACL_DNS_DB <20> ṹ<EFBFBD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> ACL_ITER <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7>
275.2) acl_fhandle.c: acl_fhandle_init()/3 <20> <> acl_fhandle_end() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> жϣ<EFBFBD> <EFBFBD> <EFBFBD> ֹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
274) 2009.9.9
274.1) comment: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щע<D0A9> <D7A2>
274.2) acl_mask_addr.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˵<EFBFBD> Ԫ<EFBFBD> <D4AA> <EFBFBD> <EFBFBD> , unit_test/net/test_net_misc.c
273) 2009.9.8
273) feature: db/acl_dbsql.c, db/mysql/acl_dbmysql.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
acl_dbmysql_select()/3, acl_dbmysql_free_result()/1, db/acl_dbpool.h <20> <>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_SQL_RES <20> ṹ<EFBFBD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> ͨ<EFBFBD> õ<EFBFBD> ACL_ITER <20> Բ<EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> б <EFBFBD> <D0B1> <EFBFBD>
272) 2009.9.7
272.1) acl_iterator.h: ACL_ITER <20> ṹ<EFBFBD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> Ա<EFBFBD> <D4B1> <EFBFBD> <EFBFBD> dlen, ʹ <> <CAB9> <EFBFBD> ߿<EFBFBD> <DFBF> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ô<EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݴ<EFBFBD> С
271) 2009.9.5
271.1) acl_iterator.h: ȥ<> <C8A5> <EFBFBD> <EFBFBD> ACL_ITER <20> е <EFBFBD> iter_init()/2, <20> <> <EFBFBD> ڸ<EFBFBD> <DAB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> iter_head()/2, iter_next()/2, iter_tail()/2, iter_prev()/2 <20> ĸ<EFBFBD> <C4B8> <EFBFBD> Ա<EFBFBD> <D4B1>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> ۣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Dz<EFBFBD> ֧<EFBFBD> <EFBFBD> ͨ<EFBFBD> õı <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ֻҪ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> iter_head()/2, iter_next()/2 <20> <> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
iter_tail()/2, iter_prev()/2 <20> <> ֧<EFBFBD> <D6A7> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD>
270) 2009.9.1
270.1) bugfix: acl_fhandle.c <20> <> acl_fhandle_open <20> <> ʧ<EFBFBD> <CAA7> <EFBFBD> ڼ<EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣʱ<CFA2> <CAB1> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> յ<EFBFBD> ַ
270.2) bugfix: acl_fseek()/3 û<> <C3BB> <EFBFBD> <EFBFBD> acl_file.h ͷ<> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
269) 2009.8.31
269.1) feature: acl_file.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_fseek()/3 <20> ӿ<EFBFBD>
268) 2009.8.30
268.1) feature: stdlib/acl_file.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ר<EFBFBD> <D7A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> Ķ<EFBFBD> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> , <20> ṩ<EFBFBD> <E1B9A9> <EFBFBD> <EFBFBD>
ANSI <20> <> <EFBFBD> <D7BC> <EFBFBD> ƵĽӿ<C4BD>
267) 2009.8.29
267.1) <20> <> ACL_ASTREAM <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> Ƴ<EFBFBD> <C6B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_aio.h ͷ<> ļ<EFBFBD> <C4BC> <EFBFBD> , <20> <> Ϊ
<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ش<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ͷ<EFBFBD> <EFBFBD> 壬<EFBFBD> <EFBFBD> <EFBFBD> Ʊػ<EFBFBD> <EFBFBD> <EFBFBD> Ҫʵ<EFBFBD> <EFBFBD> һ Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵ<EFBFBD> <EFBFBD> <EFBFBD> 鷳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Խ<EFBFBD> <EFBFBD> ýṹ<EFBFBD> Ķ<EFBFBD> <EFBFBD> 幫<EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> <EFBFBD> ʣ<EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ṩ<EFBFBD> ˷<EFBFBD> <EFBFBD> ʺ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 黹<EFBFBD> <EFBFBD> <EFBFBD> ú<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ Ϻ ã<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ý<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ýṹ<EFBFBD> <EFBFBD> <EFBFBD> 巢<EFBFBD> <EFBFBD> <EFBFBD> 仯
266) 2009.8.28
266.1) feature: acl_iterator.h, <20> <> <EFBFBD> ж<EFBFBD> <D0B6> <EFBFBD> <EFBFBD> ˸ <EFBFBD> Ϊͨ<CEAA> õĵ<C3B5> <C4B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
stdlib/common/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ݽṹ<DDBD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Էdz<D4B7> <C7B3> ķ<F2B5A5B5> ʽ <EFBFBD> ô<EFBFBD> ͨ<EFBFBD> õ<EFBFBD> <C3B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
266.2) sample: iterator/, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˺ܶ<CBBA> ʹ <EFBFBD> õ<EFBFBD> <C3B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> б <EFBFBD> <D0B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
265) 2009.8.27
265.1) feature: acl_fhandle.c, acl_fhandle_open()/6 <20> е IJ<D0B5> <C4B2> <EFBFBD> oflags <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> ־λ
ACL_FHANDLE_O_MKDIR <20> <> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <C8B7> <EFBFBD> Ƿ<EFBFBD> <C7B7> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> 鲢<EFBFBD> <E9B2A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> Ŀ¼<C4BF> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> øñ<C3B8> ־λ<D6BE> <CEBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> һ <EFBFBD> δ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> ʱ<EFBFBD> <EFBFBD> Ŀ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܽ<EFBFBD> <EFBFBD> <EFBFBD>
265.2) acl_htable/acl_binhash: <20> ڱ<EFBFBD> <DAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <D0A3> ɵ<EFBFBD> foreach() <20> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> ⣺<EFBFBD> <E2A3BA> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <D1AD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ break <20> <EFBFBD> <F2B2BBBB> ˳<EFBFBD> ѭ<EFBFBD> <D1AD> , ԭ<> <D4AD> <EFBFBD> Ǿɵ<C7BE> foreach() <20> <> Ƕ<EFBFBD> <C7B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> for() ѭ<> <D1AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_xxx_iter_head/acl_xxx_iter_next/acl_xxx_iter_tail/acl_xxx_iter_prev
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> foreach() <20> ͽ<EFBFBD> Ƕ<EFBFBD> <C7B6> һ <EFBFBD> <D2BB> for() ѭ<> <D1AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> ߱<EFBFBD> <DFB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڱ<EFBFBD> <DAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> break ѭ<> <D1AD>
264) 2009.8.26
264.1) bugfix: acl_fhandle.c, acl_fhandle_end() <20> ڹر<DAB9> <D8B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> ǰӦ<C7B0> <D3A6>
<EFBFBD> ص<EFBFBD> Ӧ<EFBFBD> õĹرջص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
264.2) acl_cache.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> acl_cache_create() ʱ<> <CAB1> free_fn <20> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> ,
ֻ<EFBFBD> Ǹ<EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʾ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> free_fn Ϊ<> <CEAA>
264.3) feature: acl_fhandle.c, acl_fhandle_init() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> ;
ͬʱ acl_fhandle_open() <20> <> oflags Ҳ<> <D2B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> ı <EFBFBD> ־λ ACL_FHANDLE_O_MLOCK
263) 2009.8.24
263.1) acl_lseek: ֧<> <D6A7> Linux/Solaris ƽ ̨<C6BD> µ<EFBFBD> 64λ<34> <CEBB> <EFBFBD> <EFBFBD>
263.2) bugfix: acl_fhandle.c <20> ڼ<EFBFBD> ¼<EFBFBD> <C2BC> ־ʱ<D6BE> <CAB1> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
262) 2009.8.23
262.1) acl_mystring.c: acl_ui64toa_radix() <20> <> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> WIN32<33> Ķ<EFBFBD> <C4B6> <EFBFBD>
262.2) db/memdb: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> Чʹ <D0A7> õĵط<C4B5>
261) 2009.8.20
261.1) acl_slice: <20> <EFBFBD> <DEB8> ˼<EFBFBD> <CBBC> <EFBFBD> bug; acl_slice_free()/1 ֧<> <D6A7> ACL_SLICE_FLAG_GC2,
ACL_SLICE_FLAG_GC3 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD> ͷ<EFBFBD> , <20> <> acl_slice_free2()/2 <20> <> ֧<EFBFBD> <D6A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷŲ<CDB7> <C5B2> <EFBFBD>
260) 2009.8.19
260.1) bugfix: acl_slice ȥ<> <C8A5> <EFBFBD> <EFBFBD> ACL_SLICE_FLAG_GC_TIME2 <20> 㷨<EFBFBD> <E3B7A8> <EFBFBD> <EFBFBD> <EFBFBD> 㷨<EFBFBD> <E3B7A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȱ<EFBFBD> ݵ<EFBFBD>
259) 2009.8.17--8.18
259.1) feature: stdlib/memory/acl_slice.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_SLICE_FLAG_LP64_ALIGN,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 64λ<EFBFBD> <EFBFBD> <EFBFBD> ½<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֽڶ<EFBFBD> <EFBFBD> <EFBFBD> ;
259.2) <20> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> Ľ<EFBFBD> <C4BD> ĵط<C4B5> : acl_slice.c <20> е <EFBFBD> ACL_SLICE_FLAG_MIN_TIME3 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> ʡ
<EFBFBD> ĸĽ<EFBFBD> <EFBFBD> ռ <EFBFBD> , <20> <> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> 64λƽ ̨<C6BD> Ͻ<EFBFBD> ռ 8<D5BC> <38> <EFBFBD> ֽڵ<D6BD> ָ<EFBFBD> <D6B8> ת<EFBFBD> <D7AA> Ϊռ 4<D5BC> <34> <EFBFBD> ֽڵ<D6BD> <DAB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
10240000 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> ֿ<EFBFBD> <D6BF> Խ<EFBFBD> ʡ39MB
258) 2009.8.12
258.1) feature: stdlib/memory/acl_slice.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> µ<EFBFBD> <C2B5> ڴ<EFBFBD> <DAB4> <EFBFBD> Ƭ<EFBFBD> 㷨<EFBFBD> <E3B7A8> <EFBFBD> <EFBFBD> <EFBFBD> 㷨
<EFBFBD> <EFBFBD> Ч<EFBFBD> ʸ<EFBFBD> <EFBFBD> ߣ<EFBFBD> ͬʱ<EFBFBD> ڴ<EFBFBD> ռ <EFBFBD> ø<EFBFBD> С
258.2) feature: acl_mystring.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_i64toa_radix()/4, acl_ui64toa_radix()/4 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <EFBFBD> ʱָ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͣ<EFBFBD> <EFBFBD> <EFBFBD> LINUX<EFBFBD> ²<EFBFBD> <EFBFBD> Է<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ִ<EFBFBD> <EFBFBD> Ч<EFBFBD> ʻ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> snprintf
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ת<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> :)
258.3) stdlib/ Ŀ¼<C4BF> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> йص<D0B9> Դ<EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> stdlib/memory/ Ŀ¼<C4BF> <C2BC>
257) 2009.8.10
257.1) feature: stdlib/acl_fhandle.c, <20> <> <EFBFBD> Ի<EFBFBD> <D4BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <F2BFAAB5> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD>
256) 2009.8.7
256.1) bugfix: acl_vstream.c, <20> <> Ϊ<EFBFBD> <CEAA> ACL_VSTREAM.path <20> <> Ϊ
ACL_VSTREAM.remote_addr <20> <> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> <C3A3> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_free()/1 <20> ڲ<EFBFBD> <DAB2> ͷ<EFBFBD>
path <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڽ<EFBFBD> ACL_VSTREAM.path <20> <> <EFBFBD> <EFBFBD> Ϊ const char*, <20> Ա<EFBFBD> <D4B1> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <C7B7> ͷ<EFBFBD> , <20> <>
bug Ӱ<> <D3B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> acl_vstream_free()/1 <20> ĵط<C4B5>
<EFBFBD> <EFBFBD> : acl_master/framework/master_spawn.c: acl_master_spawn()->acl_vstream_free()/1,
255) 2009.8.6
255.1) acl_ring, acl_htable, acl_binhash, acl_fifo: ͳһ <CDB3> ˱<EFBFBD> <CBB1> <EFBFBD> <EFBFBD> ķ<EFBFBD> <C4B7> ʷ<EFBFBD> ʽ ,
ʹ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̸<EFBFBD> <EFBFBD> Ӽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч
255.2) acl_ring: ȥ<> <C8A5> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> õ<EFBFBD> <C3B5> ظ<EFBFBD> <D8B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĺ<EFBFBD>
254) 2009.8.3
254.1) stdlib: acl_htable/acl_binhash/acl_fifo/acl_ring, ͳһ <CDB3> ˱<EFBFBD> <CBB1> <EFBFBD> <EFBFBD> <EFBFBD> ʽ
253) 2009.7.31
253.1) stdlib: acl_htable.c, acl_binhash.c, acl_cache.c, acl_btree.c <20> ڲ<EFBFBD> <DAB2> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_slice_xxx <20> <> <EFBFBD> <EFBFBD>
253.2) private: ȥ<> <C8A5> <EFBFBD> <EFBFBD> htable.c, binhash.c
253.3) db/memdb: <20> <> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> ˽<EFBFBD> е <EFBFBD> htable.c, binhash.c, <20> <> Ϊ acl_htable.c,
acl_binhash.c Ҳ֧<D2B2> <D6A7> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> Ƭ, <20> <> <EFBFBD> <EFBFBD> memdb/ <20> µĺ<C2B5> <C4BA> <EFBFBD> ֱ<EFBFBD> <D6B1> ʹ <EFBFBD> ù<EFBFBD> <C3B9> <EFBFBD> <EFBFBD> <EFBFBD> acl_htable.c,
acl_binhash.c.
253.4) <20> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> acl_htable.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ṩ<EFBFBD> Ľӿڲ<D3BF> һ <EFBFBD> µĵط<C4B5>
252) 2009.7.28
252.1) stdlib/acl_slice: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 㷨<EFBFBD> <E3B7A8> <EFBFBD> <EFBFBD> <EFBFBD> 㷨<EFBFBD> <E3B7A8> ʵʱ<CAB5> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
Ч<EFBFBD> ʸ<EFBFBD> <EFBFBD> ߣ<EFBFBD> <EFBFBD> Ҳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ð<EFBFBD> <EFBFBD> <EFBFBD> 㷨<EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> ʹ <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> ܹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 챻<EFBFBD> <EFBFBD> <EFBFBD> գ <EFBFBD> Ψһ <EFBFBD> <EFBFBD> ȱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> ڴ棬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> :)
251) 2009.7.26
251.1) private: <20> <> <EFBFBD> Ӹ<EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> Ϊ<EFBFBD> <CEAA> lib_acl <20> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> õ<EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
251.2) <20> <> stdlib/debug/ <20> µ<EFBFBD> debug_htable.c <20> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ṹ<EFBFBD> <E1B9B9> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ǰ<EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µı <EFBFBD> <EFBFBD> 뾯<EFBFBD> <EFBFBD>
251.3) <20> <> VC6 <20> ±<EFBFBD> <C2B1> <EFBFBD> ͨ<EFBFBD> <CDA8>
250) 2009.7.24
250.1) stdlib/acl_slice: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> BUG:)
Ϊ<EFBFBD> ˱<EFBFBD> ֤ acl_slice <20> <> ͨ<EFBFBD> <CDA8> <EFBFBD> ԣ<EFBFBD> <D4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> ˱<EFBFBD> ֤<EFBFBD> <D6A4> 64λ<34> <CEBB> <EFBFBD> <EFBFBD> AVL ʹ <> <CAB9> acl_slice
ʱ<EFBFBD> <EFBFBD> <EFBFBD> ᱨ<EFBFBD> <EFBFBD> , <20> <> <EFBFBD> ڲ<EFBFBD> <DAB2> ڴ<EFBFBD> Ƭ<EFBFBD> ṹ<EFBFBD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
250.2) lib_acl <20> Ѿ<EFBFBD> <D1BE> <EFBFBD> Redhat AS4/AS5(32/64), FreeBSD, VC2003/VC2008 <20> ϱ <EFBFBD> <CFB1> 벢<EFBFBD> <EBB2A2> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
249) 2009.7.22
249.1) stdlib/acl_slice: <20> <> <EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> Ƭ<EFBFBD> Ĺ<EFBFBD> <C4B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ú<EFBFBD> <C3BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ̶<EFBFBD> <CCB6> <EFBFBD> <EFBFBD> ȵ<EFBFBD> <C8B5> ڴ<EFBFBD>
<EFBFBD> ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ʱ<EFBFBD> dz<EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> Ƭ
248) 2009.7.18
248.1) db/memdb: <20> <> <EFBFBD> ½<EFBFBD> <C2BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƣ<EFBFBD> <C6A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŀ<EFBFBD> <C4BF> ܣ<EFBFBD> Ŀǰ<C4BF> <C7B0> <EFBFBD> ڸÿ<DAB8> <C3BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD>
<EFBFBD> 㷨<EFBFBD> У <EFBFBD> <EFBFBD> ַ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƹ<EFBFBD> ϣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƽ <EFBFBD> ȶ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> SUN<55> <4E> avl<76> <6C> )
248.2) samples/memdb: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> valgrind <20> <> <EFBFBD> ԣ<EFBFBD> <D4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> ©<EFBFBD> <C2A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
247) 2009.7.3
247.1) acl_vstream: ACL_VSTREAM <20> ṹ<EFBFBD> <E1B9B9> ȥ<EFBFBD> <C8A5> <EFBFBD> ˶<EFBFBD> <CBB6> <EFBFBD> <EFBFBD> <EFBFBD> rw_arg, ͬʱ<CDAC> <CAB1>
ACL_VSTREAM_CTL_RW_ARG ɾ<> <C9BE> , <20> <> ACL_VSTREAM_CTL_CACHE_SEEK <20> <> ԭ<EFBFBD> <D4AD> <EFBFBD> <EFBFBD> 8 <20> <> Ϊ 7,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTREAM_CTL_CONTEXT <20> <> <EFBFBD> <EFBFBD> ͬ<EFBFBD> <CDAC> <EFBFBD> <EFBFBD> ACL_VSTREAM_CTL_CTX; acl_vstream.c
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> rw_arg <20> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ context.
246) 2009.6.30
246.1) aio/, ioctl/, master/template/: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_EVENT <20> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> ӿ<EFBFBD>
246.2) master/template/: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> н<EFBFBD> <D0BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> λ<EFBFBD> ÷<EFBFBD> <C3B7> <EFBFBD> pre_init()
ǰ, <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⲿ<EFBFBD> <E2B2BF> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> ACL_EVENT <20> <> <EFBFBD> <EFBFBD>
245) 2009.6.27
245.1) acl_vstream: IO <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˸ <EFBFBD> timeout <20> <> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD>
244) 2009.6.26
244.1) acl_vstream.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˼<EFBFBD> <CBBC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> õĺ<C3B5> <C4BA> <EFBFBD> , ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <D0B4> <EFBFBD> ǻ<EFBFBD> <C7BB> <EFBFBD> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
243) 2009.6.23
243.1) bugfix: acl_ioctl_app_main.c, acl_aio_app_main.c <20> е <EFBFBD>
__deny_info û<> <C3BB> <EFBFBD> ȸ<EFBFBD> <C8B8> <EFBFBD> ʼ ֵ<CABC> <D6B5> <EFBFBD> ᵼ<EFBFBD> <E1B5BC> coredump
243.2) ȥ<> <C8A5> <EFBFBD> <EFBFBD> acl_define_unix.h, acl_define_linux.h <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ
<EFBFBD> ļ<EFBFBD> , <20> <> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> ʱ<EFBFBD> <CAB1> ͻ, <20> <> : pthread_spinlock_t <20> <> Ҫ<EFBFBD> <D2AA> <EFBFBD> ͱȽ<CDB1> <C8BD> ϸ<EFBFBD>
243.3) performance:
a) linux ƽ̨:
<EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ pthread_spinlock_t <20> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ٶȴ<D9B6> Լ<EFBFBD> <D4BC> pthread_mutex_t <20> <> 2<EFBFBD> <32> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ;
˫<EFBFBD> ߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ pthread_spinlock_t <20> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ٶȴ<D9B6> Լ<EFBFBD> <D4BC> 2-3<> <33>
b) FreeBsd ƽ̨:
˫<EFBFBD> ߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ pthread_spinlock_t <20> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ٶȴ<D9B6> Լ<EFBFBD> <D4BC> 7-8<> <38>
242) 2009.6.22
242.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> ͷŵ<CDB7> <C5B5> ڴ<EFBFBD> <DAB4> غ<EFBFBD> <D8BA> <EFBFBD> <EFBFBD> <EFBFBD> acl_dbuf_pool.c
242.2) feature: acl_pthread_mutex.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> Ƕ<EFBFBD> <EFBFBD> <D7BC> <EFBFBD> <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD>
acl_thread_mutex_lock()/1, acl_thread_mutex_unlock()/2,
acl_thread_mutex_nested()/1, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> <C4B3> <EFBFBD> ̶߳<DFB3> ijһ <C4B3> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> μ<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> أ<EFBFBD> <EFBFBD> <EFBFBD> ֹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
242.3) feature: src/master/template, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_ioctl_app_main.c,
acl_aio_app_main.c, <20> <> <EFBFBD> Ը<EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
241) 2009.6.19
241.1) samples/cache/main.c: <20> <> bsd <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> о <EFBFBD> <D0BE> <EFBFBD>
240) 2009.6.16
240.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> gc <20> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
240.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> ȽϺ <C8BD> <CFBA> <EFBFBD> : strrncasecmp()/3, strrncmp()/3
239) 2009.5.12
239.1) bugfix: stdlib/common/acl_array.c, acl_array_clean()/2 <20> <> <EFBFBD> <EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD>
Ϊ<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> 뱻<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
238) 2009.4.28
238.1) feature: stdlib/common/acl_cache.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˾<EFBFBD> <CBBE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƽ <EFBFBD> <C6BC> <EFBFBD> <EFBFBD> ڹ<EFBFBD> <DAB9> <EFBFBD>
<EFBFBD> Ļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> غ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ;
238.2) samples: samples/cache/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> Ի<EFBFBD> <D4BB> <EFBFBD> <EFBFBD> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD>
237) 2009.4.23
237.1) feature: acl_ring.h <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_RING_FIRST()/1, ACL_RING_LAST()/1,
ACL_RING_LAST_APPL()/3 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õĺ<C3B5> ; ͬʱ<CDAC> <CAB1> ACL_FIRST_APPL()/3 <20> <> <EFBFBD> <EFBFBD> Ϊ
ACL_RING_FIRST_APPL()/3
237.2) feature: acl_xinetd_params.c <20> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
acl_xinetd_params_int_table()/2, acl_xinetd_params_bool_table()/2,
acl_xinetd_params_str_table()/2 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> cfg <20> <> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> գ <EFBFBD> <D5A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ½<EFBFBD> <EFBFBD> <EFBFBD> Ĭ<EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> и<EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <EFBFBD> Թ<EFBFBD> <EFBFBD> <EFBFBD>
236) 2009.4.21
236.1) feature: acl_timer.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_timer_walk()/3, <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <EFBFBD> ͬʱ<EFBFBD> <EFBFBD> ACL_TIMER_INFO <20> ṹ<EFBFBD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_timer.h <20> ļ<EFBFBD> <C4BC> <EFBFBD>
226.2) bugfix: acl_timer.c <20> е <EFBFBD> acl_timer_free()/1 <20> <> <EFBFBD> ڴ<EFBFBD> й¶<D0B9> <C2B6> <EFBFBD> ⣬<EFBFBD> <E2A3AC> <EFBFBD> ڸ<EFBFBD>
<EFBFBD> <EFBFBD> Ϊ acl_timer_free()/2, <20> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Լ<EFBFBD> <D4BC> Ļص<C4BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> ݶ<EFBFBD> <DDB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD>
226.3) feature: acl_timer.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_timer_size()/1 <20> <> <EFBFBD> Ի<EFBFBD> <D4BB> ö<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
235) 2009.4.20
235.1) bugfix: win32 ƽ ̨<C6BD> µ<EFBFBD> acl_pthread_cond_timedwait()/3 ʵ<> ִ<EFBFBD> <D6B4> <EFBFBD> <EFBFBD> <EFBFBD>
Posix <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 岻<EFBFBD> <E5B2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> <EFBFBD> е ĵ<D0B5> <C4B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : <20> <> ʱֵӦ<D6B5> <D3A6> <EFBFBD> Ǿ<EFBFBD> <C7BE> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ʱ<EFBFBD> 䡣<EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : acl_pthread_cond.c, acl_pthread_pool.c, acl_aqueue.c
acl_workq.c<> <63> <EFBFBD> <EFBFBD> BUG<55> ɻ<EFBFBD> <C9BB> ȷ<EFBFBD> <C8B7> ֡<EFBFBD>
234) 2009.4.19
234.1) bugfix: getimeofday()/2, <20> ú<EFBFBD> <C3BA> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32ƽ ̨<C6BD> »<EFBFBD> <C2BB> þ<EFBFBD> ȷʱ<C8B7> <CAB1> <EFBFBD> Ĺ<EFBFBD> <C4B9> ܣ<EFBFBD>
<EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Ӽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> ϳ <EFBFBD> ʱ<EFBFBD> <EFBFBD> ʱ<EFBFBD> Ӽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 㣬<EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵʱ<EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Σ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <EFBFBD> 1<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ³<EFBFBD> ʼ <EFBFBD> <EFBFBD> ʱ
<EFBFBD> <EFBFBD> У <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <EFBFBD> ̣<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ͳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Ӽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
233) 2009.4.14
233.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˻<EFBFBD> <CBBB> ý<EFBFBD> <C3BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ȫ·<C8AB> <C2B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ·<EFBFBD> <C2B7> <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> :
acl_process_path(), acl_getcwd(), <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> : win32, Linux/FreeBsd/Solaris
233.2) samples: process/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <D3B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
233.3) <20> <> stdlib/ Ŀ¼<C4BF> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> sys/ Ŀ¼<C4BF> <C2BC> <EFBFBD> <EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵͳ<CFB5> <CDB3> <EFBFBD> صij<D8B5> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŀ¼<C4BF> <C2BC>
233.4) acl_argv_split.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_argv_splitn()/3, acl_argv_splitn_append()/4
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
232) 2009.4.9
232.1) acl_sys_patch.c: ԭ<> <D4AD> <EFBFBD> <EFBFBD> win32 ƽ ̨<C6BD> µ<EFBFBD> gettimeofday()/2 ʵ<> ֽ<EFBFBD> <D6BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
win32 API "GetSystemTimeAsFileTime"<22> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> API <20> ľ<EFBFBD> <C4BE> Ȳ<EFBFBD> <C8B2> <EFBFBD> ϸ<EFBFBD> <CFB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵ<EFBFBD> <CAB5> <EFBFBD> <EFBFBD>
win32 ƽ ̨<C6BD> µ<EFBFBD> gettimeofday <20> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> GetSystemTimeAsFileTime <20> <> ϵͳ
<EFBFBD> <EFBFBD> ʱ<EFBFBD> ӣ<EFBFBD> ʹ gettimeofday <20> <> <EFBFBD> õ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȸ<EFBFBD> ϸ
231) 2009.4.7
231.1) events: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> event_prepare()/1, event_fire()/1,
event_thr_prepare()/1, event_thr_fire()/1 <20> ĸ<EFBFBD> <C4B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɸ<EFBFBD> <C9B8> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͬ<EFBFBD> IJ<EFBFBD> <C4B2> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
230) 2009.4.3
230.1) bugfix: ACL_VSTREAM <20> ṹ<EFBFBD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <D0B5> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ռ <EFBFBD> ӦΪ unsigned char*,
ԭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ char*, <20> <> ijЩ<C4B3> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> ᵼ<EFBFBD> <E1B5BC> ʹ <EFBFBD> øýṹ<C3BD> <E1B9B9> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> :
ACL_VSTREAM_GETC/acl_vstream_getc, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> ʱ<EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> ֵΪ ACL_VSTREAM_EOF
<EFBFBD> <EFBFBD> ʾ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͬʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTREAM->read_buf,
read_ptr ԭ<> <D4AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (char*) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Դ<EFBFBD> к<EFBFBD> <D0BA> <EFBFBD> (char) -1, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
int ch = ACL_VSTREAM_GETC(stream)/int ch = acl_vstream_getc(stream) <20> <> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ch = -1 (<28> <> <EFBFBD> <EFBFBD> char <20> <> <EFBFBD> <EFBFBD> Ϊ int <20> <> <EFBFBD> <EFBFBD> ȻΪ -1), <20> <> <EFBFBD> <EFBFBD> Դ<EFBFBD> <D4B4> (char)-1 <20> <> ʵΪ
(unsigned char) 255, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ int <20> <> <EFBFBD> <EFBFBD> ȻΪ 255.
230.2) aio: <20> <> <EFBFBD> <EFBFBD> һ Щ<D2BB> <D0A9> ̫<EFBFBD> <CCAB> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> <C4B6> 壬<EFBFBD> <E5A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
229) 2009.4.2
229.1) acl_set_error()/1: <20> <> WIN32ƽ ̨<C6BD> ϣ<EFBFBD> <CFA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> API<50> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> ţ<EFBFBD> ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> C
<EFBFBD> <EFBFBD> errno <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
229.2) bugfix: acl_vstring_strstr/acl_vstring_strcasestr/strcasestr <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ե<EFBFBD> bug, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ²鲻<C2B2> <E9B2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ;
229.3) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstring_rstrstr/acl_vstring_rstrcasestr,
acl_rstrstr/acl_rstrcasestr <20> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> <EFBFBD> شӺ<D8B4> <D3BA> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD>
228) 2009.4.1
228.1) net/connect/acl_timed_connect.c: <20> <EFBFBD> <DEB8> <EFBFBD> һ <EFBFBD> <D2BB> С bug, û<> г <EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> err
228.2) net/connect: getsockopt <20> ڲ<EFBFBD> ͬƽ ̨<C6BD> <CCA8> <EFBFBD> в<EFBFBD> ͬ<EFBFBD> <CDAC> <EFBFBD> <EFBFBD> <EFBFBD> 壬<EFBFBD> <E5A3AC> <EFBFBD> Ե<EFBFBD> <D4B5> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ʱ<EFBFBD> Ƚ<EFBFBD> <EFBFBD> 鷳Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Solaris <20> ϣ<EFBFBD> <CFA3> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> getsockopt ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ó<EFBFBD> <C3B3> <EFBFBD> ֵ<EFBFBD> <D6B5>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> ȫ<EFBFBD> ֵ<EFBFBD> errno <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <D7BD> ֵ<EFBFBD> ״̬; <20> <> Linux <20> ϣ<EFBFBD> <CFA3> ڷ<EFBFBD> <DAB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> errno
ȴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ EINPROGRESS, <20> <> Ҫͨ<D2AA> <CDA8> getsockopt <20> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> ó<EFBFBD> <C3B3> <EFBFBD> ֵ<EFBFBD> <D6B5> <EFBFBD> ж<EFBFBD> ; <20> <> win32ƽ ̨
<EFBFBD> £<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӱ<EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˿<EFBFBD> ʱ<EFBFBD> <EFBFBD> ȴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̽<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʧ<EFBFBD> ܵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Σ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
getsockopt <20> ij<EFBFBD> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ0, <20> <> <EFBFBD> ҽ <EFBFBD> ȫ<EFBFBD> ֵĴ<D6B5> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 0. Ϊ<> ˽<EFBFBD> <CBBD> <EFBFBD> <EFBFBD> <EFBFBD> Щƽ ̨<C6BD> <CCA8> <EFBFBD> 죬<EFBFBD> <ECA3AC> Ҫ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> connect ֮<> <D6AE> <EFBFBD> <EFBFBD> errno <20> ţ<EFBFBD> ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> getsockopt <20> <> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> ţ<EFBFBD> <C5A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> .
227) 2009.3.30
227.1) event: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> poll <20> <> ֧<EFBFBD> <D6A7>
227.2) aio: <20> <EFBFBD> <DEB8> ˲<EFBFBD> <CBB2> ֽӿ<D6BD>
227.3) net/connect: <20> <EFBFBD> <DEB8> ˲<EFBFBD> <CBB2> <EFBFBD> BUG
226) 2009.3.11
226.1) acl_vstream_accept_ex()/4: <20> <> һ <EFBFBD> <D2BB> BUG<55> <47> <EFBFBD> <EFBFBD> <D7BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> ȡ stream->type
226.2) samples: msg/, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˲<EFBFBD> <CBB2> <EFBFBD> TCP<43> ӿڡ<D3BF> UNIX<49> <58> <EFBFBD> ӿڡ<D3BF> <DAA1> ܵ<EFBFBD> <DCB5> <EFBFBD> <EFBFBD> 첽<EFBFBD> <ECB2BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӣ<EFBFBD> <EFBFBD> <EFBFBD> Linux ƽ ̨<C6BD> <CCA8> <20> <> <EFBFBD> <EFBFBD> UNIX<49> <58> <EFBFBD> ӿ<D7BD> <D3BF> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> 첽<EFBFBD> <ECB2BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܶ<EFBFBD> <DCB6> Dz<EFBFBD> <C7B2> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> ܵ<EFBFBD> <DCB5> <EFBFBD> ֮<EFBFBD> <D6AE>
TCP<EFBFBD> ӿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 226.3) samples: dns/, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> DNS<4E> <53> <EFBFBD> Ե<EFBFBD> <D4B5> <EFBFBD> <EFBFBD> <EFBFBD> ; <20> <> FreeBSD <20> <> <EFBFBD> Թ<EFBFBD> <D4B9> <EFBFBD> <EFBFBD> У <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <20> 첽<EFBFBD> <ECB2BD> <EFBFBD> г <EFBFBD> <D0B3> <EFBFBD> <EFBFBD> ؿ죬<D8BF> <ECA3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IO<49> <4F> <EFBFBD> <EFBFBD> <EFBFBD> ܵ<EFBFBD> 3-4<> <34> ; <20> <> Solaris10-x86ƽ ̨<C6BD> £<EFBFBD>
<EFBFBD> ߳<EFBFBD> <EFBFBD> 첽<EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҳ<EFBFBD> <EFBFBD> IO<EFBFBD> <EFBFBD> <EFBFBD> ܵ<EFBFBD> 1.5<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҡ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Linux ƽ ̨<C6BD> µ<EFBFBD> <C2B5> ̻߳<DFB3> <CCBB> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> :)
225) 2009.3.10
225.1) event: kqueue <20> <> <EFBFBD> ܲ<EFBFBD> <DCB2> <EFBFBD> ; <20> <EFBFBD> <DEB8> <EFBFBD> events_kernel.c <20> е ļ<D0B5> <C4BC> <EFBFBD> bug
225.2) samples/aio: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˸ <EFBFBD> <CBB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Linux/Solaris/FreeBSD <20> <> <EFBFBD> <EFBFBD> ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ״̬
224) 2009.3.9
224.1) event: ֧<> <D6A7> FreeBSD ƽ ̨<C6BD> µ<EFBFBD> kqueue
224.2) samepls/aio: <20> й<EFBFBD> AIO<49> <4F> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
223) 2009.3.6
223.1) feature: acl_vstream.c, acl_vstream_fopen()/4 <20> <> <EFBFBD> <EFBFBD> WIN32ƽ ̨<C6BD> <CCA8>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> oflags <20> <> <EFBFBD> <EFBFBD> O_BINARY <20> <> ־
223.2) feature: acl_vstream.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_fstat()/2 <20> <>
acl_vstream_fsize()/1 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <CFA2> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> С
223.3) feature: acl_msg.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_last_serror()/0 <20> <> <EFBFBD> Ը<EFBFBD> <D4B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ػ<EFBFBD> <D8BB> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʾ <EFBFBD> <EFBFBD> Ϣ<EFBFBD> <EFBFBD> ͬʱ<EFBFBD> ú<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̰߳<EFBFBD> ȫ<EFBFBD> <EFBFBD>
223.4) feature: acl_vstream.c, <20> <> <EFBFBD> <EFBFBD> acl_vstream_fsync()/1, <20> <> <EFBFBD> Խ<EFBFBD> <D4BD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ϵͳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> <EFBFBD> ͬ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӳ<EFBFBD> <EFBFBD>
223.5) acl_file_fstat()/2: ֧<> <D6A7> WIN32ƽ ̨
223.6) <20> <> acl_sys_patch.c <20> <> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> : acl_sys_patch.c, acl_sys_file.c
<EFBFBD> <EFBFBD> acl_sys_socket.c
223.7) acl_pthread_pool.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> <D8B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> <EFBFBD> 10<31> <30> ʱ<EFBFBD> <CAB1> <EFBFBD> 豨<EFBFBD> <E8B1A8>
222) 2009.3.5
222.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_file_size()/1, acl_file_fsize()/1 <20> <> <EFBFBD> <EFBFBD>
222.2) <20> <> acl_stat_t <20> <> typedef <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͱ<EFBFBD> <CDB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 壬<EFBFBD> <E5A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> ô<EFBFBD> <C3B4> <EFBFBD> <EFBFBD> ͣ<EFBFBD>
ֻ<EFBFBD> <EFBFBD> Ҫֱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> "acl_stat_t sbuf;" <20> <> <EFBFBD> ɣ <EFBFBD> <C9A3> <EFBFBD> ȻҲ<C8BB> <D2B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> :
"struct acl_stat sbuf;"
222.3) featur: acl_vstream_fflush()/1 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> Ա<EFBFBD> ֤<EFBFBD> <D6A4> <EFBFBD> <EFBFBD> д<EFBFBD> <D0B4> Ӳ<EFBFBD> ̣<EFBFBD>
<EFBFBD> <EFBFBD> WIN32ƽ ̨<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> Ҫ
221) 2009.3.4
221.1) event: ֧<> <D6A7> Solaris ƽ ̨<C6BD> µ<EFBFBD> /dev/poll
220) 2009.3.3
220.1) event: <20> <EFBFBD> <DEB8> <EFBFBD> events_kernel.c, events_select.c <20> е <EFBFBD> һ <EFBFBD> <D2BB> bug
220.2) master/template: acl_aio_server.c ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> socket <20> Ľ<EFBFBD> <C4BD> <EFBFBD> <EFBFBD> <EFBFBD> ǿ<EFBFBD> <C7BF> <EFBFBD> <EFBFBD>
219) 2009.3.2
219.1) event: <20> <> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <DEB8> ˼<EFBFBD> <CBBC> <EFBFBD> BUG<55> <47> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݴ<EFBFBD> <DDB4> <EFBFBD> <EFBFBD> <EFBFBD>
218) 2009.3.1
218.1) event: events_select, events_kernel, <20> <EFBFBD> <DEB8> ˼<EFBFBD> <CBBC> <EFBFBD> BUG
217) 2009.2.28
217.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> epoll, devpoll <20> <> ֧<EFBFBD> ֣<EFBFBD> ͬʱ<CDAC> <EFBFBD> <DEB8> <EFBFBD> event <20> е <EFBFBD> һ ЩBUG
216) 2009.2.17-2009.2.26
216.1) <20> <> engine Ŀ¼<C4BF> <C2BC> <EFBFBD> <EFBFBD> Ϊ event; <20> <> <EFBFBD> <EFBFBD> д<EFBFBD> <D0B4> event <20> ¼<EFBFBD> ѭ<EFBFBD> <D1AD> <EFBFBD> ĵײ<C4B5> <D7B2> <EFBFBD> <EFBFBD> ܣ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> nginx <20> <> <EFBFBD> й<EFBFBD> <D0B9> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> ʽ , ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> postfix ԭ<> <D4AD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> ʹ <EFBFBD> ¼<EFBFBD> ѭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɿ<EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> ʸ<EFBFBD> <EFBFBD> ߣ<EFBFBD> ͬʱ<EFBFBD> <EFBFBD> չ<EFBFBD> Ը<EFBFBD> <EFBFBD> <EFBFBD> .
(Ŀǰ<C4BF> <C7B0> ֧<EFBFBD> <D6A7> select <20> <> ʽ <EFBFBD> <CABD> <EFBFBD> ܿ콫<DCBF> <ECBDAB> ֧<EFBFBD> <D6A7> epoll, poll, kqueue, devpoll)
216.2) aio: ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD> ʹ <EFBFBD> õĹ<C3B5> <C4B9> <EFBFBD>
215) 2009.2.16
215.1) acl_aio_server.c: <20> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> <EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֮<EFBFBD> <D6AE> <EFBFBD> <EFBFBD> ͨ<EFBFBD> Ż<EFBFBD> <C5BB> ƣ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӷdz<EFBFBD> Ƶ<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֮<EFBFBD> <D6AE> <EFBFBD> <EFBFBD> ͨ<EFBFBD> ţ<EFBFBD> <C5A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ̵<EFBFBD> ִ<EFBFBD> <EFBFBD> Ч<EFBFBD> ʣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> <> ͨ<EFBFBD> Ÿ<EFBFBD> <C5B8> <EFBFBD>
215.2) Makefile: ֧<> <D6A7> make -j n <20> <> ʽ <EFBFBD> ı <EFBFBD> <C4B1> <EFBFBD> (n <20> <> ʾ CPU<50> <55> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Makefile
<EFBFBD> Զ<EFBFBD> ʶ<EFBFBD> 𣩣<EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> ڶ<EFBFBD> <EFBFBD> <EFBFBD> ϵͳ<EFBFBD> ϴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˱<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ٶ<EFBFBD>
214) 2009.2.12
214.1) <20> <> WIN32ƽ ̨<C6BD> ½<EFBFBD> acl_project/unit_test/ <20> ĵ<EFBFBD> Ԫ<EFBFBD> <D4AA> <EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> ACL<EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> Ԫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
213) 2009.2.11
213.1) net/connect/acl_inet_connect: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> ̵<EFBFBD> ַʱ<D6B7> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <D4B0> <F3B6A8B1> <EFBFBD> <EFBFBD> <EFBFBD>
ij<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> ַ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڶ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƚ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
213.2) include/master/acl_master_type.h: ACL_CONFIG_INT_TABLE,
ACL_CONFIG_STR_TABLE, ACL_CONFIG_BOOL_TABLE <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
stdlib/acl_xinetd_cfg.h <20> е Ľṹ<C4BD> <E1B9B9> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB>
212) 2009.1.18-2009.1.19
212.1) feature: acl_pthread.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_pthread_atexit_add()/2,
acl_pthread_atexit_remove()/2 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> ߳̿<DFB3> <CCBF> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> /ɾ<> <C9BE> <EFBFBD> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> ˳<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <D8B5> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> <CDB7> ֲ߳̾<CCBE>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĺ<EFBFBD> <EFBFBD> <EFBFBD>
212.2) <20> <EFBFBD> <DEB8> <EFBFBD> thread/ Ŀ¼<C4BF> <C2BC> Դ<EFBFBD> <D4B4> <EFBFBD> <EFBFBD> <EFBFBD> ڷ<EFBFBD> <DAB7> <EFBFBD> /<2F> ͷ<EFBFBD> <CDB7> ڴ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> õײ<C3B5> <D7B2> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (acl_default_xxx), <20> <> <EFBFBD> Ǹ<EFBFBD> Ϊ<EFBFBD> <CEAA> ͨ<EFBFBD> õ<EFBFBD> <C3B5> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> acl_myxxx() <20> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <CABD>
ͬʱ<EFBFBD> <EFBFBD> stdlib/ Ŀ¼<C4BF> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> local/ ģ<> 飬<EFBFBD> <E9A3AC> <EFBFBD> <EFBFBD> ACL<43> <4C> <EFBFBD> ڲ<EFBFBD> ʹ <EFBFBD> <CAB9>
212.3) samples: thread_pool/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> <C4B2> Թ<EFBFBD> <D4B9> <EFBFBD>
211) 2009.1.13
211.1) acl_myflock: ͳһ <CDB3> <D2BB> <EFBFBD> <EFBFBD> UNIX/WIN32ƽ ̨<C6BD> ½ӿڵ<D3BF> <DAB5> õķ<C3B5> ʽ
211.2) proctl: ȥ<> <C8A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> lockfile.c, lockfile.h, <20> <> <EFBFBD> <EFBFBD> <DEB8> ˵<EFBFBD> <CBB5> <EFBFBD>
acl_myflock()/3 <20> IJ<EFBFBD> <C4B2> <EFBFBD>
211.3) acl_mystring: <20> <EFBFBD> <DEB8> ˼<EFBFBD> <CBBC> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
210) 2009.1.12
210.1) acl_vstream: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTREAM <20> ṹ<EFBFBD> е <EFBFBD> ijЩ<C4B3> <D0A9> <EFBFBD> õij<C3B5> Ա
ȥ<EFBFBD> <EFBFBD>
210.2) acl_aio_server, acl_ioctl_server, acl_single_server, acl_multi_server,
<EFBFBD> ⼸<EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֹ<EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ա<EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ý<EFBFBD> <EFBFBD> е <EFBFBD> <EFBFBD> <EFBFBD>
209) 2009.1.10
209.1) acl_vstream: <20> ı <EFBFBD> acl_vstream_getc()/2 Ϊ acl_vstream_getc()/1,
ͬʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ṩ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> ĺ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTREAM_GETC()/1; <20> ṩ<EFBFBD> ˱<EFBFBD> <EFBFBD> <D7BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
acl_vstream_printf()/n
209.2) acl_vstring_vstream: <20> <> Ϊ acl_vstream <20> <> Щ<EFBFBD> ӿڵĸı <C4B8> <C4B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD>
208) 2009.1.9
208.1) bugfix: acl_ioctl_server.c, ԭ<> <D4AD> <EFBFBD> <EFBFBD> acl_master <20> ض<EFBFBD> <D8B6> <EFBFBD> <EFBFBD> ú<EFBFBD> , <20> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD>
ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> رռ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <EFBFBD> <EFBFBD> ͬ<EFBFBD> <EFBFBD> <EFBFBD> رշ<EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> رռ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ¼<EFBFBD> ѭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̵߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> пռ 䲻ͬ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɳ<EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڽ<EFBFBD> <EFBFBD> ر<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڶ<EFBFBD> ʱ<EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> ѭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳̿ռ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͬ<EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Բ<EFBFBD> <EFBFBD> ٻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
208.2) feature: acl_vstring_vstream.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˽<EFBFBD> ACL_VSTRING, ACL_VSTREAM
<EFBFBD> <EFBFBD> <EFBFBD> ϵIJ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
207) 2009.1.8
207.1) feature: acl_htable <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿ<EFBFBD> acl_htable_capacity() <20> <>
acl_htable_size()
207.2) feature: <20> <> Postfix <20> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> п<EFBFBD> <D0BF> <EFBFBD> <EFBFBD> <EFBFBD> readline.c, readline.h,
split_nameval.c <20> <> acl <20> <> <EFBFBD> У <EFBFBD> <D0A3> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ: acl_readline.c, readline.h
acl_split_nameval.c
207.3) acl_vstream: acl_vstream_fopen()/4 <20> IJ<EFBFBD> <C4B2> <EFBFBD> ȥ<EFBFBD> <C8A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (rw_timeo),
<EFBFBD> <EFBFBD> Ϊ4<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˵<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> ʲô<EFBFBD> <EFBFBD> <EFBFBD> 壻<EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> ڴ<EFBFBD>
changes.txt <20> ĵ<EFBFBD> <C4B5> ж<EFBFBD> <D0B6> ں<EFBFBD> <DABA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ı <EFBFBD> ʶ<EFBFBD> <CAB6> <EFBFBD> <EFBFBD> <F3BDABB2> <EFBFBD> acl_xxxx()/n, n <20> <> ʾ <EFBFBD> <CABE> <EFBFBD> <EFBFBD> <EFBFBD> ĸ<EFBFBD> <C4B8> <EFBFBD>
207.4) vc2003, vc2008 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> ©<EFBFBD> <C2A9> <EFBFBD> <EFBFBD> Դ<EFBFBD> ļ<EFBFBD> :
proctl/lockfile.c, lockfile.h, stdlib/acl_meter_time.c, stdlib/acl_meter_time.h
206) 2009.1.7
206.1) feature: acl_aio_server, acl_multi_server <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> ھ <EFBFBD>
֧<EFBFBD> <EFBFBD> <EFBFBD> ض<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ù<EFBFBD> <EFBFBD> ܼ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܣ<EFBFBD>
206.2) acl_ioctl_server, acl_aio_server, acl_single_server,acl_multi_server
<EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> 嶼֧<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ض<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܡ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ;
206.3) acl_ioctl_server, acl_aio_server, acl_multi_server: ʹ <> <CAB9> <EFBFBD> <EFBFBD> Щ<EFBFBD> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ģ<EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9>
acl_single_server <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> ķ<EFBFBD> <C4B7> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ, acl_master <20> <> <EFBFBD> <EFBFBD> <DEB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> ȴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> ſ <EFBFBD> <C5BF> <EFBFBD> <EFBFBD> <EFBFBD>
205) 2009.1.6
205.1) feature: acl_master <20> <> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> ӽ<EFBFBD> <D3BD> ̱<EFBFBD> <CCB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
205.2) acl_master: ֧<> <D6A7> <EFBFBD> ض<EFBFBD> <D8B6> <EFBFBD> <EFBFBD> ù<EFBFBD> <C3B9> ܵ<EFBFBD> <DCB5> <EFBFBD> <EFBFBD> ƣ<EFBFBD> Ŀǰ֧<C7B0> ָù<D6B8> <C3B9> ܵ<EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> У <EFBFBD>
acl_ioctl_server, acl_single_server <20> <> <EFBFBD> <EFBFBD> ģ<EFBFBD> 壬<EFBFBD> <E5A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> ٲ<EFBFBD> <D9B2> Բ<EFBFBD> <D4B2> <EFBFBD> <EFBFBD> <EFBFBD>
204) 2009.1.4
204.1) bugfix: events_proc.c, events_thr.c <20> е ĺ<D0B5> <C4BA> <EFBFBD> event_loop() <20> е <EFBFBD>
wait_ring, ready_ring <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ǿֲ<C7BE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_event_disable_xxx
<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> event_fdtable_free, <20> <> event_fdtable_free <20> е <EFBFBD> <D0B5> ڵ<EFBFBD> <DAB5> ú<EFBFBD> <C3BA> <EFBFBD>
acl_ring_detach ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˸ <EFBFBD> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ<EFBFBD> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD>
event_loop() ѭ<> <D1AD> <EFBFBD> <EFBFBD> ִ<EFBFBD> <D6B4> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> .
204.2) feature: acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> ض<EFBFBD> <D8B6> <EFBFBD> <EFBFBD> ܣ<EFBFBD> <DCA3> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD>
ʵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ν <EFBFBD> ij<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> :)
203) 2008.12.30
203.1) doc: ͷ<> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <DEB8> ˲<EFBFBD> <CBB2> <EFBFBD> <EFBFBD> <EFBFBD> doxygen ע<> 淶<CDB9> <E6B7B6> ע<EFBFBD> ͷ<EFBFBD> <CDB7> <EFBFBD>
202) 2008.12.29
202.1) feature: thread/acl_pthread_pool <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˴ <EFBFBD> <CBB4> <EFBFBD> <EFBFBD> ̳߳صļ<C4BC> <F2B5A5BA> <EFBFBD>
acl_thread_pool_create
202.2) comment: acl_scan_dir.h <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ע<EFBFBD> <D7A2>
201) 2008.12.23
201.1) compile: acl_pthread_xxx <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> FreeBSD <20> <> WIN32 ƽ ̨<C6BD> ±<EFBFBD> <C2B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
200) 2008.12.22
200.1) <20> <> FreeBSD 6 <20> ϱ <EFBFBD> <CFB1> <EFBFBD> ACL<43> <4C> <EFBFBD> <EFBFBD>
200.2) bugfix: master/template/acl_ioctl_server.c: <20> <> ʹ <EFBFBD> <CAB9> getopt() ǰ<> <C7B0> Ϊ<EFBFBD> <CEAA> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD>
getopt() <20> е <EFBFBD> ȫ<EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> Ӱ<EFBFBD> <D3B0> <EFBFBD> ˲<EFBFBD> <CBB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> BSD<53> ϻᷢ<CFBB> <E1B7A2>
200.3) compile: <20> <> samples/ Ŀ¼<C4BF> µĹ<C2B5> <C4B9> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
200.4) <20> <> ACL <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ acl_project.2.0.1
199) 2008.12.20-12.21
199.1) <20> <> vc2008 <20> ϱ <EFBFBD> <CFB1> <EFBFBD> ͨ<EFBFBD> <CDA8>
199.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֯<EFBFBD> <D6AF> VC2003<30> ı <EFBFBD> <C4B1> 빤<EFBFBD> <EBB9A4>
199.3) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֯<EFBFBD> <D6AF> VC6<43> ı <EFBFBD> <C4B1> 빤<EFBFBD> <EBB9A4>
199.4) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щͷ<D0A9> ļ<EFBFBD> <C4BC> <EFBFBD> ע<EFBFBD> <D7A2>
199.5) thread: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̳߳<DFB3> ģ<EFBFBD> 飬<EFBFBD> <E9A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> ϵ<EFBFBD> <CFB5> ̳߳<DFB3> ģ<EFBFBD> <C4A3> (acl_workq)
198) 2008.12.12-12.16
198.1) comment: Ϊ<> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> doxygen <20> ĵ<EFBFBD> <C4B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ע<EFBFBD> <D7A2>
198.2) compile: <20> <> Redhat AS5 <20> ϱ <EFBFBD> <CFB1> <EFBFBD> ͨ<EFBFBD> <CDA8>
198.3) acl_socket_init <20> <> ʼ <EFBFBD> <CABC> ʱ<EFBFBD> <CAB1> UNIXƽ ̨<C6BD> <CCA8> <EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> signal(SIGPIPE, SIG_IGN)
197) 2008.12.8
197.1) feature: code/acl_urlcode.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> url <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 뺯<EFBFBD> <EBBAAF> <EFBFBD> <EFBFBD>
197.2) samples: samples/urlcode/, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> url <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
196) 2008.12.2
196.1) acl_vstream.c: Ϊ<> ˱<EFBFBD> <CBB1> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> fseek λ<> ö<EFBFBD> <C3B6> <EFBFBD> <EFBFBD> ɵĸ<C9B5> <C4B8> <EFBFBD> <EFBFBD> ã<EFBFBD> <C3A3> ṩһ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> fseek λ<> û<EFBFBD> <C3BB> 棬<EFBFBD> <E6A3AC> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_ctl()
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ñ<EFBFBD> ־λ ACL_VSTREAM_CTL_CACHE_SEEK <20> <> <EFBFBD> ﵽ<EFBFBD> <EFB5BD> Ŀ<EFBFBD> <C4BF> .
195) 2008.12.1
195.1) performance: acl_vstream.c, acl_vstream_fseek() <20> <> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ִ<EFBFBD> <D6B4>
Ч<EFBFBD> <EFBFBD> , ֻҪ<D6BB> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݻ<EFBFBD> <DDBB> ڲ<EFBFBD> <DAB2> <EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> ƻ<EFBFBD> <C6BB> <EFBFBD> <EFBFBD> Ϳ <EFBFBD> <CDBF> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> fseek ʱ<> <CAB1> ͨ<EFBFBD> <CDA8> <EFBFBD> ƶ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <EFBFBD> λ<EFBFBD> þ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݣ<EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ٵ<EFBFBD> <EFBFBD> <EFBFBD> ϵͳ<EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
194) 2008.11.30
194.1) performance: acl_vstream.c, acl_vstream_fseek() ͨ<> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ִ<EFBFBD> <EFBFBD> Ч<EFBFBD> <EFBFBD>
194.2) samples: vstream_fseek/, watchdog/, base64/
193) 2008.11.28
193.1) bugfix: proctl/proctl_service.c, proctl_service_exist()
<EFBFBD> жϷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> ÿ<EFBFBD> <C3BF> <EFBFBD> <EFBFBD> <EFBFBD> WIN32<33> <32> <EFBFBD> <EFBFBD> Ч
192) 2008.11.23-11.24
192.1) feature: acl_chunk_chain.c, <20> <> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> Ҫʵ<D2AA> <CAB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <DDBF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> Ĺ<EFBFBD> <EFBFBD> ܣ<EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݻ<EFBFBD> <EFBFBD> 塢<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȹ<EFBFBD> <EFBFBD> ܣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Խ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> תΪ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
192.2) samples: chunk_chain, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
191) 2008.11.20
191.1) bugfix: proctl/acl_proctl.c, acl_proctl_child() <20> <>
acl_proctl_deamon_init() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ߳<EFBFBD> ʱӦ<CAB1> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̵߳Ĵ<CCB5> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ
detached ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Դй©<D0B9> <C2A9> <EFBFBD> <EFBFBD>
190) 2008.11.19
190.1) bugfix: proctl/acl_proctl.c, acl_proctl_deamon_init() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD>
<EFBFBD> ߳<EFBFBD> ʱû<EFBFBD> г <EFBFBD> ʼ <EFBFBD> <EFBFBD> attr <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <DEB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
190.2) acl_define_win32.h: Ϊ<> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> VC6<43> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> ԣ<EFBFBD> <D4A3> <EFBFBD> <EFBFBD> ˺ꡰif(_MSC_VER >= 1300)<29> <>
<EFBFBD> Ծ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Dz<EFBFBD> <EFBFBD> <EFBFBD> winsock.h, <20> <> <EFBFBD> <EFBFBD> winsock2.h
189) 2008.11.18
189.1) feature: stdlib/debug/, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL<43> <4C> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й©<D0B9> <C2A9> <EFBFBD> ڴ<EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> ķ<EFBFBD> <C4B7> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
189.2) samples: debug_malloc/ <20> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
189.3) bugfix: acl_aio_read.c <20> <> ԭ<EFBFBD> <D4AD> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> read_fn() <20> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> strbuf
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƕ<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ȼ<EFBFBD> <EFBFBD> <EFBFBD> ܴ<EFBFBD> <EFBFBD> ڸû<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݱ<EFBFBD> <EFBFBD> ظ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Σ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> õIJ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <EFBFBD> strbuf <20> Ļ<EFBFBD> <C4BB> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݳ<EFBFBD> <DDB3> ȣ <EFBFBD> Ȼ<EFBFBD> <EFBFBD> strbuf
<EFBFBD> <EFBFBD> λ(<28> <> <EFBFBD> <EFBFBD> <EFBFBD> ƻ<EFBFBD> <C6BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )<29> <> Ȼ<EFBFBD> <C8BB> <EFBFBD> ٵ<EFBFBD> <D9B5> <EFBFBD> read_fn() <20> <> <EFBFBD> <EFBFBD> Ԥ<EFBFBD> <D4A4> ȡ<EFBFBD> õĻ<C3B5> <C4BB> <EFBFBD> <EFBFBD> <EFBFBD> ַ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݳ<EFBFBD> <EFBFBD> ȴ<EFBFBD> <EFBFBD> ݽ<EFBFBD> ȥ<EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ر<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <EFBFBD> <EFBFBD> read_fn() <20> ڲ<EFBFBD> <DAB2> Ķ<EFBFBD> <C4B6> εݹ<CEB5>
Ƕ<EFBFBD> <EFBFBD> <EFBFBD> ̵<EFBFBD> strbuf <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݱ<EFBFBD> <DDB1> ظ<EFBFBD> <D8B8> <EFBFBD> <EFBFBD> <EFBFBD>
188) 2008.11.17
188.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_mem_hook.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӿڣ<D3BF> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> ߿<EFBFBD> <DFBF> <EFBFBD> ע<EFBFBD> <D7A2> <EFBFBD> Լ<EFBFBD> <D4BC> <EFBFBD> <EFBFBD> ڴ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷź<EFBFBD> <EFBFBD> <EFBFBD>
187) 2008.11.14
187.1) bugfix: acl_vstream.c, <20> <> <EFBFBD> е <EFBFBD> __vstream_sys_readn() <20> Ķ<EFBFBD> <C4B6> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
WIN32ƽ ̨<EFBFBD> <EFBFBD> <EFBFBD> DZ<EFBFBD> undef <20> <> <EFBFBD> رյģ<D5B5> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> WIN32<33> ij<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> <C3A3> <EFBFBD> <EFBFBD> ڽ<EFBFBD> WIN32ƽ ̨
<EFBFBD> µĶ<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> ܴ<EFBFBD> <EFBFBD> <EFBFBD>
187.2) feature: net/acl_tcp_ctl.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_tcp_so_linger() <20> <> װ<EFBFBD> <D7B0> <EFBFBD> û<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> ˺<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <EFBFBD> ӿڹر<EFBFBD> ʱ<EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> TIME_WAIT ״̬<D7B4> ij<EFBFBD> <C4B3> ֣<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ե<EFBFBD> <EFBFBD> ӿ<EFBFBD> Ƶ<EFBFBD> <EFBFBD> <EFBFBD> شر<EFBFBD> ʱ<EFBFBD> <EFBFBD> Ч<EFBFBD> ؽ<EFBFBD> ԼTCP<EFBFBD> Ķ˿ںţ<EFBFBD> <EFBFBD> <EFBFBD> Ҳ<EFBFBD> <EFBFBD> <EFBFBD> ܲ<EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
186) 2008.11.13
186.1) thread/acl_pthread.c: WIN32ƽ ̨<C6BD> £<EFBFBD> <C2A3> <EFBFBD> û<EFBFBD> е <EFBFBD> <D0B5> <EFBFBD> acl_pthread_init()ʱ<> <CAB1>
<EFBFBD> ڲ<EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> CREATE_SUSPENDED<EFBFBD> Ĵ<EFBFBD> <EFBFBD> <EFBFBD> ģʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> б <EFBFBD> Ҫ<EFBFBD> ij<EFBFBD> ʼ <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ɺ<EFBFBD> <EFBFBD> <EFBFBD> ResumeThread()<29> ´ <EFBFBD> <C2B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̣߳<DFB3> <CCA3> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> Ա<EFBFBD> ֤<EFBFBD> <D6A4> ʹ <EFBFBD> û<EFBFBD> û<EFBFBD> е <EFBFBD> <D0B5> <EFBFBD>
acl_pthread_init()<29> <> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ȼ<EFBFBD> <C8BB> ֤<EFBFBD> <D6A4> <EFBFBD> <EFBFBD> <EFBFBD> ̵߳<DFB3> <CCB5> <EFBFBD> <EFBFBD> ۰ <EFBFBD> ȫ<EFBFBD> ԣ<EFBFBD> <D4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> Ԥ<EFBFBD> ȵ<EFBFBD> <C8B5> <EFBFBD> <EFBFBD> <EFBFBD>
acl_pthread_init()<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> ķ<EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> ⴴ<EFBFBD> <E2B4B4> <EFBFBD> ߳<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ϵ<EFBFBD>
<EFBFBD> <EFBFBD> ȫ<EFBFBD> <EFBFBD> <EFBFBD> ⡣
185) 2008.11.12
185.1) bugfix: stdlib/string/acl_mystring.c <20> е <EFBFBD> acl_mystrline() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> bug,
<EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> Ӱ<EFBFBD> <EFBFBD> ʹ <EFBFBD> øú<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_xinetd_cfg.c <20> Լ<EFBFBD> master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е Ķ<D0B5> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD>
<EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD>
185.2) feature: stdlib/common/acl_htable.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_htable_last_errno() <20> <>
<EFBFBD> <EFBFBD> acl_htable_set_errno() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ Ӧ<CAB9> ÿ<EFBFBD> <C3BF> <EFBFBD> <EFBFBD> жϲ <D0B6> <CFB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϣ<EFBFBD> <CFA3> <EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> ״̬<D7B4> <CCAC>
Ŀǰ<EFBFBD> <EFBFBD> <EFBFBD> ڹ<EFBFBD> ϣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˴ <EFBFBD> <EFBFBD> <EFBFBD> ״̬. <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> ACL_HTABLE_STAT_DUPLEX_KEY
184) 2008.11.10
184.1) thread: <20> <> <EFBFBD> <EFBFBD> acl_pthread_init()/acl_pthread_end() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32ƽ ̨<EFBFBD> ´ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> ʱ<EFBFBD> <EFBFBD> acl_pthread_creeate<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> RunThreadWrap()
<EFBFBD> ڲ<EFBFBD> ʹ <EFBFBD> <EFBFBD> <EFBFBD> ߳̾<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŀ<EFBFBD> <EFBFBD> ܴ<EFBFBD> <EFBFBD> ڵij<EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
184.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> init/ ģ<> 飬<EFBFBD> <E9A3AC> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> ACL<43> <4C> <EFBFBD> ڲ<EFBFBD> <DAB2> ij<EFBFBD> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> û<EFBFBD> ֻ<EFBFBD> <D6BB> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB>
acl_init(), <20> ú<EFBFBD> <C3BA> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> ͻ<EFBFBD> <CDBB> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> й<EFBFBD> WIN32<33> µ<EFBFBD> SOCKET<45> <54> THREAD<41> Լ<EFBFBD> UNIX<49> µ<EFBFBD> signal
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> ʼ <EFBFBD> <EFBFBD>
183) 2008.11.9
183.1) thread: <20> <> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32ƽ ̨<C6BD> µ<EFBFBD> POSIX<49> <58> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
182) 2008.11.8
182.1) thread/: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_pthread_join <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> POSIX<49> <58> <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
acl_pthread_detach()
181) 2008.11.7
181.1) bugfix: acl_mystring.c->acl_mystrline() <20> ڽ<EFBFBD> <DABD> <EFBFBD> <EFBFBD> <EFBFBD> "\r\n" Ϊ<> س<EFBFBD> <D8B3> <EFBFBD> <EFBFBD> з<EFBFBD> ʱ
<EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> BUG<EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> Ӱ<EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> ĺ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (acl_xinetd_cfg.c)
181.2) performance: acl_mystring.c->acl_mystrline() <20> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־λʱ<CEBB> <CAB1> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݵ<EFBFBD> <EFBFBD> ƶ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> memmove())<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ij<DEB8> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> ƶ<EFBFBD> һ <EFBFBD> εķ<CEB5> ʽ
180) 2008.11.6
180.1) bugfix: acl_aio_read.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> е ĵ<D0B5> <C4B5> <EFBFBD> astream->read_fn() ֮<> <D6AE> <EFBFBD> <EFBFBD> Ӧ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_VSTRING_RESET() <20> Է<EFBFBD> ֹ<EFBFBD> <D6B9> <EFBFBD> <EFBFBD> <EFBFBD> ݱ<EFBFBD> <DDB1> ظ<EFBFBD> <D8B8> <EFBFBD> <EFBFBD> <EFBFBD>
180.2) performance: stdlib/charmap.h, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD> ת<EFBFBD> <D7AA> ӳ<EFBFBD> <D3B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> ʹ
strcaseXXX<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿ<EFBFBD> <EFBFBD> <EFBFBD>
180.3) net/dns: rfc1035 ģ<> <C4A3> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> ƹ<EFBFBD> <C6B9> <EFBFBD> ʵ<EFBFBD> <CAB5>
180.4) stdlib/configure: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
179) 2008.11.5
179.1) feature: acl_dlink.c, acl_dlink_lookup_larger() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Բ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> н<EFBFBD> <EFBFBD> 㼯<EFBFBD> <EFBFBD> ; acl_dlink_lookup_lower() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Բ<EFBFBD> <D4B2> <EFBFBD>
С <EFBFBD> ڵ<EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> н<EFBFBD> <EFBFBD> 㼯<EFBFBD> ϣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݽ<EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> Ƚ϶<EFBFBD> ʱ<EFBFBD> <EFBFBD> Ч<EFBFBD> ʻ <EFBFBD> <EFBFBD> Ƚϵͣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ö<EFBFBD> <EFBFBD> ijɶ<EFBFBD> <EFBFBD> ֲ<EFBFBD> <EFBFBD> <EFBFBD>
179.2) performance: strcasecmp, strcasencmp, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˸ <EFBFBD> <CBB8> <EFBFBD> Ч<EFBFBD> <D0A7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
179.3) bugfix: acl_aio_read.c, acl_aio_readn() <20> У <EFBFBD> Ӧ<EFBFBD> ý<EFBFBD>
" astream->count = count; " <20> <> <EFBFBD> ں<EFBFBD> <DABA> <EFBFBD> <EFBFBD> <EFBFBD> ʼ <EFBFBD> <CABC> __readn_notify_callback() <20> <>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> "astream->read_fn" <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> "ACL_VSTRING_RESET(&astream->strbuf);"
<EFBFBD> Ա<EFBFBD> <EFBFBD> <EFBFBD> fatal <20> <> <EFBFBD> <EFBFBD>
178) 2008.11.3
178.1) feature: acl_dlink.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_dlink_lookup_range()<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD>
<EFBFBD> <EFBFBD> ѯij<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Χ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
177) 2008.10.31
177.1) feature: acl_dlink.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_dlink_delete_range() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD>
<EFBFBD> ش<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɾ<EFBFBD> <EFBFBD> ij<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Χ <EFBFBD> ڵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݽ<EFBFBD> <EFBFBD> <EFBFBD>
177.2) feature: acl_array.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_array_delete_range() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD>
<EFBFBD> <EFBFBD> ɾ<EFBFBD> <EFBFBD> ij<EFBFBD> <EFBFBD> <EFBFBD> ±귶Χ ֮<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
176) 2008.10.27
176.1) feature: C99<39> <39> <EFBFBD> <D7BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<CCBE> <D6B2> 洢<EFBFBD> <E6B4A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Դ<EFBFBD> <D4B4> <EFBFBD> <EFBFBD> <EFBFBD> ֻҪ<D6BB> ڱ<EFBFBD> <DAB1> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD>
<EFBFBD> ꣺__thread <20> <> <EFBFBD> ñ<EFBFBD> <C3B1> <EFBFBD> <EFBFBD> ͱ<EFBFBD> <CDB1> <EFBFBD> <EFBFBD> <EFBFBD> Ϊһ <CEAA> <D2BB> <EFBFBD> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 磺<EFBFBD> <E7A3BA> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> õ<EFBFBD> <C3B5> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD>
static __thread int i = 0; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⲿ<EFBFBD> <E2B2BF> <EFBFBD> õ<EFBFBD> <C3B5> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .c <20> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA>
__thread int i; Ȼ<> <C8BB> <EFBFBD> <EFBFBD> .h ͷ<> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> extern __thread int i;
windows <20> ´ <EFBFBD> VC7<43> <37> ʼ Ҳ֧<D2B2> <D6A7> C99<39> <39> <EFBFBD> <D7BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> WIN32<33> <32> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԣ<EFBFBD> <D4A3> <EFBFBD> Ҫ<EFBFBD> ڱ<EFBFBD> <DAB1> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD>
__declspec(thread)<29> <> Ϊ<EFBFBD> <CEAA> ʹ <EFBFBD> õ<EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> ԣ<EFBFBD> <D4A3> <EFBFBD> acl_define_win32.h <20> н<EFBFBD> <D0BD> <EFBFBD> <EFBFBD> <EFBFBD> ͳһ <CDB3> <D2BB> <EFBFBD> <EFBFBD> Ϊ
__thread; <20> <> <EFBFBD> <EFBFBD> UNIX<49> µ<EFBFBD> Makefile<6C> ļ<EFBFBD> <C4BC> <EFBFBD> GCC<43> <43> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> Ҫ<EFBFBD> ѡ <EFBFBD> -pedantic<69> <63> ѡ <EFBFBD> <D1A1> ȥ<EFBFBD> <C8A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> C89<EFBFBD> ı <EFBFBD>
176.2) samples: thread/ <20> µ<EFBFBD> <C2B5> <EFBFBD> <EFBFBD> <EFBFBD> ˵<EFBFBD> <CBB5> <EFBFBD> <EFBFBD> C89<38> <39> <EFBFBD> <EFBFBD> <EFBFBD> ֲ߳̾<CCBE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 洢<EFBFBD> <E6B4A2> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
175) 2008.10.26
175.1) feature: acl_dlink.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿ<EFBFBD> acl_dlink_lookup2_by_item,
acl_dlink_lookup2, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> ݽ<EFBFBD> <DDBD> <EFBFBD> ʱͬʱȡ<CAB1> øý<C3B8> <C3BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ±<EFBFBD> ֵ
174) 2008.10.21
174.1) feature: acl_sys_patch.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> win32 <20> µ<EFBFBD> gettimeofday ʵ<> <CAB5>
174.2) feature: acl_netdb.c, <20> <> չ<EFBFBD> <D5B9> һ Щ<D2BB> ṹ<EFBFBD> <E1B9B9> Ա<EFBFBD> <D4B1> ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> º<EFBFBD> <C2BA> <EFBFBD> <EFBFBD> <EFBFBD>
acl_netdb_refer_oper, acl_netdb_refer, acl_netdb_unrefer, acl_netdb_add_addr
173) 2008.10.17
173.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̶߳<DFB3> ջ<EFBFBD> ռ <EFBFBD> <D5BC> <EFBFBD> С <EFBFBD> <D0A1> <EFBFBD> <EFBFBD> <EFBFBD> ù<EFBFBD> <C3B9> ܣ<EFBFBD> <DCA3> 漰<EFBFBD> <E6BCB0> <EFBFBD> ļ<EFBFBD> <C4BC> У <EFBFBD>
acl_pthread.c/h, acl_workq.c/h, acl_ioctl.c/h, acl_ioctl_server.c,
acl_ioctl_params.h
acl_pthread.c: acl_pthread_attr_setstacksize
acl_workq.c: acl_workq_set_stacksize
acl_ioctl.c/h: ACL_IOCTL_CTL_THREAD_STACKSIZE
acl_ioctl_server.c: acl_var_ioctl_stacksize
acl_ioctl_params.h: ACL_VAR_IOCTL_STACKSIZE, ACL_DEF_IOCTL_STACKSIZE
172) 2008.10.10
172.1) samples: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> dz<EFBFBD> <C7B3> <EFBFBD> <EFBFBD> õ<EFBFBD> HTTP<54> ͻ<EFBFBD> <CDBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> http_client/
171) 2008.10.9
171.1) workaround: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC6<43> <36> VC2003<30> <33> <EFBFBD> 뻷<EFBFBD> <EBBBB7> <EFBFBD> µĹ<C2B5> <C4B9> <EFBFBD> <EFBFBD> <EFBFBD> ֯<EFBFBD> <D6AF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD>
lib_acl.dll, lib_acl.lib, lib_acl_d.dll, lib_acl_d.lib <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD>
lib_acl_vc6.lib, lib_acl_vc6d.lib, lib_acl_vc2003.lib, lib_acl_vc2003d.lib
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> ̬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC2003<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC6<EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD>
171.2) samples: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC6<43> <36> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> samples <20> <> <EFBFBD> ̣<EFBFBD> ĿǰΪ<C7B0> ˲<EFBFBD> <CBB2> Խ<EFBFBD> <D4BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (vstream.dsp, vstring.dsp)
170) 2008.10.8
170.1) master <20> <> <EFBFBD> <EFBFBD> : <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_tcp_defer_accept() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ù<EFBFBD> <C3B9> ܣ<EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> ߿<EFBFBD> <DFBF> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Կͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӳٽ<EFBFBD> <EFBFBD> ܹ<EFBFBD> <EFBFBD> <EFBFBD> , <20> ĵ<DEB8> <C4B5> ļ<EFBFBD> <C4BC> <EFBFBD>
master.h, master_ent.c, master_listen.c
170.2) acl_inet_listen.c: ȥ<> <C8A5> <EFBFBD> <EFBFBD> Ĭ<EFBFBD> ϵ<EFBFBD> acl_tcp_defer_accept() <20> <> <EFBFBD> ã<EFBFBD> ʹ <EFBFBD> <CAB9>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫʹ <EFBFBD> ô˹<EFBFBD> <EFBFBD> ܣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Դ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿں<EFBFBD> <EFBFBD> ֹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
169) 2008.10.7
169.1) <20> <> <EFBFBD> 룺VC <20> <> <EFBFBD> 붯̬<EBB6AF> <CCAC> <EFBFBD> <EFBFBD> DEBUG<55> 汾<EFBFBD> <E6B1BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ִ<EFBFBD> г <EFBFBD> <D0B3> <EFBFBD> <EFBFBD> <EFBFBD> DEBUG<55> 汾ʱ<E6B1BE> <CAB1> Ĭ<EFBFBD> <C4AC>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> *.ilk <20> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڱ<EFBFBD> <DAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <C3B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ·<EFBFBD> <C2B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC
Ĭ<EFBFBD> ϵģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ *.ilk <20> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> п<EFBFBD> <D0BF> <EFBFBD> <EFBFBD> <EFBFBD> VC<56> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> BUG<55> <47> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڹر<DAB9> <D8B1> <EFBFBD>
VC<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӵĹ<EFBFBD> <EFBFBD> <EFBFBD>
169.2) samples/proctld ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
169.3) <20> <> <EFBFBD> <EFBFBD> ACL<43> <4C> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɶ<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> ӿ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> ACL<43> <4C> ̬<EFBFBD> <CCAC> ʱӦ<CAB1> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
Ԥ<EFBFBD> <EFBFBD> <EFBFBD> 壺ACL_DLL
169.4) include/stdlib/acl_define_win32.h: <20> <> ΪVC<56> <43> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> Ԥ<EFBFBD> <D4A4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
Ԥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѡ <EFBFBD> <EFBFBD> : WIN32, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڸ<EFBFBD> <DAB8> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĭ<EFBFBD> ϴ<EFBFBD> <CFB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ԥ<EFBFBD> <D4A4> <EFBFBD> 壬ҲĬ<D2B2> <C4AC>
<EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> VC<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
168) 2008.9.29
168.1) feature: <20> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ļ<EFBFBD> <C4BC> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 壬<EFBFBD> <E5A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_API <20> <> <EFBFBD> 壬<EFBFBD> <E5A3AC> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> DLL<EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> ACL<43> ⣬<EFBFBD> <E2A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> DLL<4C> <4C> ʽ ʹ <CABD> <CAB9>
ACL<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> Ԥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ꣺ACL_DLL
167) 2008.9.27
167.1) bugfix: events_proc.c, <20> <> <EFBFBD> <EFBFBD> select() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ -1, <20> <> error
Ϊ EINTR, <20> <> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> أ<EFBFBD> <D8A3> <EFBFBD> û<EFBFBD> н<EFBFBD> eventp->nested <20> ָ<EFBFBD> <D6B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> ε<EFBFBD> <CEB5> <EFBFBD>
event_loop() ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> "if (eventp->nested++ > 0)" <20> <> <EFBFBD> <EFBFBD> , <20> <> BUG<55> <47> Ӱ<EFBFBD> <D3B0>
acl_master, <20> <> <EFBFBD> <EFBFBD> master <20> <> <EFBFBD> ܵ<EFBFBD> aio <20> <> <EFBFBD> <EFBFBD> ʵ<EFBFBD> <CAB5>
166) 2008.9.26
166.1) acl_vstream.h: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <C4B5> <EFBFBD> ע<EFBFBD> <EFBFBD> ʽ <EFBFBD> <CABD> ʹ ֮<CAB9> <D6AE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> JAVA-DOC <20> <> ʽ
166.2) acl_vstream.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_fhopen() <20> ӿڣ<D3BF> <DAA3> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> Ӽ<EFBFBD> <D3BC> <EFBFBD> win32
166.3) acl_myloc.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_log_fp() <20> ӿ<EFBFBD>
165) 2008.9.22
165.1) mempool/acl_allocator.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˽ӿ<CBBD> acl_allocator_ctl() <20> Է<EFBFBD> <D4B7> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> صĻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С /<2F> <> <EFBFBD> ֽ<EFBFBD> <D6BD> <EFBFBD>
164) 2008.9.19
164.1) proctl: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_proctl_start_one() <20> <> acl_proctl_stop_one()
<EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> в<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ò<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˫<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
164.2) compile: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˼<EFBFBD> <CBBC> <EFBFBD> <EFBFBD> <EFBFBD> C++ Builder6 <20> ϵı <CFB5> <C4B1> 뾯<EFBFBD> <EBBEAF>
164.3) acl_hash.c: <20> <> crc64 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ acl_hash_crc64
164.4) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڸ<EFBFBD> <DAB8> <EFBFBD> ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϱ <EFBFBD> <CFB1> <EFBFBD> ͨ<EFBFBD> <CDA8>
164.5) acl_aio_read/write: <20> ڵ<EFBFBD> <DAB5> <EFBFBD> XXX_SAFE_IOCP <20> <> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ٶ<EFBFBD> astream <20> <> <EFBFBD> <EFBFBD>
<EFBFBD> κβ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> ָ<EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <EFBFBD> <EFBFBD>
163) 2008.9.18
163.1) proctl: <20> <> ģ<EFBFBD> <C4A3> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <C8B7> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <D0A9> <EFBFBD> <EFBFBD>
162) 2008.9.11
162.1) acl_vstream: ֧<> <D6A7> <EFBFBD> <EFBFBD> <D7BD> ֵ<EFBFBD> writev ģʽ <C4A3> <CABD> <EFBFBD> ұ<EFBFBD> ֤ȫ<D6A4> <C8AB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <D0B4>
162.2) samples/vstream: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˼<EFBFBD> <CBBC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ժ<EFBFBD> <D4BA> <EFBFBD>
162.3) samples/master/: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˼<EFBFBD> <CBBC> <EFBFBD> Makefile <20> ļ<EFBFBD>
161) 2008.9.10
161.1) <20> ڴ<EFBFBD> <DAB4> صĻ<D8B5> <C4BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С <EFBFBD> <D0A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Դﵽ1M<31> <4D> Ҳ<EFBFBD> <D2B2> Ӧ<EFBFBD> üӸ<C3BC> <D3B8> <EFBFBD> <EFBFBD> ؿ<EFBFBD> <D8BF> <EFBFBD> һ <EFBFBD> <D2BB>
<EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> Ļ<EFBFBD> <EFBFBD> <EFBFBD>
161.2) acl_sys_patch.c: ֧<> <D6A7> <EFBFBD> <EFBFBD> <D7BD> ֵ<EFBFBD> writev ģʽ
161.3) acl_vstream.c: ֧<> <D6A7> <EFBFBD> <EFBFBD> <D7BD> ֵ<EFBFBD> writev ģʽ
161.4) acl_aio_write.c: ֧<> <D6A7> <EFBFBD> <EFBFBD> <D7BD> ֵ<EFBFBD> writev ģʽ
160) 2008.9.9
160.1) <20> °汾<C2B0> <E6B1BE> acl <20> <> <EFBFBD> ڸ<EFBFBD> <DAB8> <EFBFBD> ƽ ̨<C6BD> ϱ <EFBFBD> <CFB1> <EFBFBD> ͨ<EFBFBD> <CDA8>
159) 2008.9.4-9.8
159.1) engine/events_proc.c: <20> <EFBFBD> <DEB8> ˼<EFBFBD> <CBBC> <EFBFBD> <EFBFBD> <EFBFBD> Linux epoll <20> <> <EFBFBD> صļ<D8B5> <C4BC> <EFBFBD> BUG<55> <47>
<EFBFBD> <EFBFBD> postfix <20> м̳<D0BC> <CCB3> <EFBFBD> <EFBFBD> й<EFBFBD> epoll <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ش<EFBFBD> <D8B4> 룬<EFBFBD> <EBA3AC> postfix <20> жԶ<D0B6> д<EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> Ҫ<EFBFBD> <D2AA>
<EFBFBD> Dz<EFBFBD> <EFBFBD> <EFBFBD> ͬʱ<EFBFBD> <EFBFBD> ij<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڶ<EFBFBD> д<EFBFBD> <EFBFBD> <EFBFBD> ؼ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
event_disable_readwrite <20> ӿڣ<D3BF> <DAA3> <EFBFBD> acl <20> <> <EFBFBD> е <EFBFBD> events_proc.c <20> <> ȴ<EFBFBD> <C8B4> <EFBFBD> <EFBFBD> ͬʱ
<EFBFBD> <EFBFBD> ͬһ <EFBFBD> <EFBFBD> <EFBFBD> ֽ<EFBFBD> <EFBFBD> ж<EFBFBD> д<EFBFBD> <EFBFBD> <EFBFBD> أ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> event_disable_read, event_disable_write
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿڣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԭ postifx <20> е <EFBFBD> <D0B5> й<EFBFBD> epoll <20> ĵ<EFBFBD> <C4B5> <EFBFBD> <EFBFBD> <EFBFBD> acl <20> о ͻ<D0BE> <CDBB> <EFBFBD> <EFBFBD> ִ<EFBFBD> <D6B4> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ѿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ acl <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Էdz<D4B7> <C7B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <D6A7> Linux <20> µ<EFBFBD> epoll <20> <> <EFBFBD> ã<EFBFBD>
ֻ<EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> lib_acl/src/engine/events_define.h <20> е <EFBFBD> ACL_EVENTS_KERNEL
<EFBFBD> <EFBFBD> <EFBFBD> 弴<EFBFBD> <EFBFBD>
159.2) aio/: ԭ<> <D4AD> <EFBFBD> <EFBFBD> acl <20> <> <EFBFBD> е ķ<D0B5> <C4B7> <EFBFBD> <EFBFBD> <EFBFBD> IO <20> <> aio ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> ڶ<EFBFBD> <DAB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> ʽ
<EFBFBD> ǵ<EFBFBD> ij<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵĶ<EFBFBD> <EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> 㽫<EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɺ<EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> ǶԲ<C7B6> <D4B2> <EFBFBD>
epoll <20> <> <EFBFBD> Ƶķ<C6B5> <C4B7> <EFBFBD> )<29> <> <EFBFBD> <EFBFBD> <EFBFBD> ڽ<EFBFBD> <DABD> 첽<EFBFBD> <ECB2BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊһ ֱ<D2BB> ɶ<EFBFBD> <C9B6> <EFBFBD> <EFBFBD> 浽Ӧ<E6B5BD> <D3A6> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> رո <D8B1>
<EFBFBD> <EFBFBD> <EFBFBD> ֻ<EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> <EFBFBD> ֹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊֹ<EFBFBD> <EFBFBD> acl_aio_write ģ<> <C4A3> <EFBFBD> <EFBFBD> Ƕ<EFBFBD> ״<EFBFBD> <D7B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> Ϊ
<EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱδ<EFBFBD> <EFBFBD> Ƕ<EFBFBD> ײ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¶<EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˵<EFBFBD> <EFBFBD> <EFBFBD> ڴﵽ
дǶ<EFBFBD> ײ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƺ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ժ<EFBFBD> <EFBFBD> <EFBFBD> ÿһ <EFBFBD> <EFBFBD> д<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> м<EFBFBD> <EFBFBD> <EFBFBD> Ȼ<EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> д
<EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Ļص<EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> ɣ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <EFBFBD> Ч<EFBFBD> <EFBFBD> (ʵ<> <CAB5> ֤<EFBFBD> <D6A4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> BUG<EFBFBD> ĺ<EFBFBD> <EFBFBD> <EFBFBD> acl <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> webserver <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 2000<30> <30> ÿ<EFBFBD> 룻<EFBFBD> <EBA3BB>
acl_aio_listen <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <D1AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⲿ<EFBFBD> <E2B2BF> <EFBFBD> ӹ<EFBFBD> <D3B9> ܣ<EFBFBD> <DCA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߲<EFBFBD> <DFB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ; <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> aio
ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ش<EFBFBD> <EFBFBD> 룬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> йؽӿ<EFBFBD>
159.3) acl_aio_create <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> accept_max <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> 1<EFBFBD> <31>
ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֽ<EFBFBD> <EFBFBD> ղ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܣ<EFBFBD> ʵ<EFBFBD> <EFBFBD> ֤<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵΪ1<EFBFBD> <EFBFBD> acl_vstream_listen
<EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> б Ƚ<EFBFBD> С ʱ(<28> <> С <EFBFBD> <D0A1> 64)<29> <> <EFBFBD> <EFBFBD> <EFBFBD> п<EFBFBD> <D0BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> Ľ<EFBFBD> <C4BD> <EFBFBD> <EFBFBD> ӳ<EFBFBD>
158) 2008.9.1-9.3
158.1) socket performance: <20> ڲ<EFBFBD> <DAB2> Ի<EFBFBD> <D4BB> <EFBFBD> acl_aio_xxx <20> <> <EFBFBD> <EFBFBD> д<EFBFBD> <D0B4> HTTP<54> <50> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1>
(<28> <> Apache <20> <> ab<61> <62> <EFBFBD> ߲<EFBFBD> <DFB2> <EFBFBD> ) <20> <> <EFBFBD> ֳ<EFBFBD> <D6B3> <EFBFBD> <EFBFBD> ӵ<EFBFBD> Ч<EFBFBD> ʷ<EFBFBD> <CAB7> <EFBFBD> <EFBFBD> ȶ<EFBFBD> <C8B6> <EFBFBD> <EFBFBD> ӵ<EFBFBD> Ч<EFBFBD> ʵͣ<CAB5> <CDA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϸ
<EFBFBD> Ų飬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С <EFBFBD> <EFBFBD> <EFBFBD> ݰ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϵͳ<EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Nagle <20> 㷨<EFBFBD> <E3B7A8>
<EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> ӳ٣<EFBFBD> Ϊ<EFBFBD> ˱<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_sane_accept,
acl_sane_connect <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> <EFBFBD> TCP_NODELAY <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԣ<EFBFBD> <D4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Nagle
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɵ<EFBFBD> <EFBFBD> ӳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> Ȼ<EFBFBD> п<EFBFBD> <D0BF> ܻή<DCBB> <E1BDB5> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
158.2) net/acl_tcp_ctl.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_tcp_nodelay<61> ӿڣ<D3BF> <DAA3> <EFBFBD> <EFBFBD> Կ<EFBFBD> /<2F> <> ij<EFBFBD> <C4B3> <EFBFBD> ӿ<D7BD>
<EFBFBD> <EFBFBD> TCP_NODELAY <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
158.3) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> Ч<EFBFBD> ʲ<EFBFBD> <CAB2> Խӿڣ<D3BF> stdlib/acl_meter_time.c, <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <EFBFBD> ͨ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ú<EFBFBD> ACL_METER_TIME("your info") <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÿ<EFBFBD> <C3BF> ִ<EFBFBD> к<EFBFBD> <D0BA> <EFBFBD> <EFBFBD> <EFBFBD> ִ<EFBFBD> <D6B4> ʱ<EFBFBD> <CAB1> ,
<EFBFBD> ڲ<EFBFBD> <EFBFBD> ԡ<EFBFBD> 158.1) <20> <> <EFBFBD> <EFBFBD> Nagle <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ɵ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ӳ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ú<EFBFBD> <C3BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˷dz<CBB7> <C7B3> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
158.4) acl_fifo.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˸ <EFBFBD> <CBB8> <EFBFBD> <EFBFBD> Ľӿڣ<D3BF> ͬʱ<CDAC> <CAB1> <EFBFBD> ṹ<EFBFBD> <E1B9B9> <EFBFBD> Ͷ<EFBFBD> <CDB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ļ<EFBFBD> <C4BC> У <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ջ<EFBFBD> Ϸ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <EFBFBD> <EFBFBD>
158.5) acl_aio: <20> Ż<EFBFBD> <C5BB> ˽ṹ<CBBD> <E1B9B9> <EFBFBD> ƣ<EFBFBD> <C6A3> <EFBFBD> һ Щ<D2BB> <D0A9> Ҫ<EFBFBD> <D2AA> <EFBFBD> ζ<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̺ϲ <CCBA> <CFB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ̬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
158.6) acl_vstring: Ϊ acl_aio <20> <> <EFBFBD> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstring_free_buf <20> <> <EFBFBD> <EFBFBD>
158.7) sample: fifo <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˲<EFBFBD> <CBB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
157) 2008.8.27
157.1) <20> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> 䣺<EFBFBD> <E4A3BA> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl <20> <> <EFBFBD> ̻<EFBFBD> <CCBB> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> ؽ<EFBFBD> <D8BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¹<EFBFBD> <C2B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᵼ<EFBFBD> <E1B5BC> <EFBFBD> <EFBFBD> Щ
<EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й¶<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
157.2) acl_vstream.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> е Ļص<C4BB> <D8B5> ͷź<CDB7> <C5BA> <EFBFBD> acl_myfree_fn ȥ<> <C8A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> <D6B1>
<EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> ͷŷ<EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_array_delete_idx <20> ĵ<EFBFBD> <C4B5> ÷<EFBFBD> <C3B7> <EFBFBD> close_fn <20> <> <EFBFBD> <EFBFBD> ֮ǰ<D6AE> <C7B0> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ֹ<EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> close_fn <20> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_delete_close_handle ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD>
<EFBFBD> Ƿ<EFBFBD> <EFBFBD> ظ<EFBFBD> <EFBFBD> ͷ<EFBFBD>
157.3) samples/master/ioctl_echo, aio_echo: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <F3A3ACB5> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> master_env ʱ<> <CAB1> û<EFBFBD> <C3BB> <EFBFBD> ж<EFBFBD> getenv() <20> <> <EFBFBD> <EFBFBD> NULL <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
156) 2008.8.26
156.1) <20> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> 䣺<EFBFBD> <E4A3BA> <EFBFBD> ½<EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
156.2) <20> <> <EFBFBD> 룺<EFBFBD> <EBA3BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC6<43> ϳ ɹ<CFB3> <C9B9> <EFBFBD> <EFBFBD> 룬ͬʱ<CDAC> <CAB1> win32ƽ ̨<C6BD> µĵĿ<C4B5> <C4BF> <EFBFBD> <EFBFBD> Ӻ<EFBFBD> <EFBFBD> <D7BA>
<EFBFBD> <EFBFBD> lib_acl_vc6.lib, lib_acl_vc2003.lib, lib_acl_cb6.lib
155) 2008.8.23-25
155.1) <20> ڴ<EFBFBD> <DAB4> أ<EFBFBD> <D8A3> <EFBFBD> acl <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> ؽ<EFBFBD> <D8BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¹<EFBFBD> <C2B9> <EFBFBD> , <20> <> ֮<EFBFBD> <D6AE> <EFBFBD> ص<EFBFBD> <D8B5> <EFBFBD> <DEB8> ļ<EFBFBD> <C4BC> <EFBFBD>
acl_malloc.c, acl_mylog.c, acl_allocator.c mem_pool.c, squid_allocator.c
vstring_pool.c, etc, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŀ¼ mempool/ <20> <> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ acl <20> <> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> stdlib/ <20> µ<EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3>
155.2) acl_stack.c: <20> <> <EFBFBD> ½<EFBFBD> <C2BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˵<EFBFBD> <CBB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȹ<EFBFBD> <C8B9> <EFBFBD>
155.3) unit_test: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_stack ģ<> <C4A3> <EFBFBD> ĵ<EFBFBD> Ԫ<EFBFBD> <D4AA> <EFBFBD> <EFBFBD>
155.4) master/aio, iotcl: <20> <> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˲<EFBFBD> <CBB2> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> صĹ<D8B5> <C4B9> <EFBFBD>
154) 2008.8.22
154.1) acl_mymalloc.c: acl_mymalloc(), acl_myfree() ȥ<> <C8A5> <EFBFBD> <EFBFBD> memset()
<EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ò<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> Ƚϴ<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> ȽϺ <EFBFBD> ʱ
154.2) acl_allocator: <20> ڴ<EFBFBD> <DAB4> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> ½<EFBFBD> <C2BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
154.3) samples/mempool: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> صIJ<D8B5> <C4B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
154) 2008.8.21
154) acl_vstring.c: acl_vstring_sprintf_prepend <20> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> DZ<EFBFBD> ڵ<EFBFBD> ָ<EFBFBD> <D6B8> BUG
153) 2008.8.20
153.1) acl_mylog.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> UNIXƽ ̨<C6BD> ¶<EFBFBD> <20> <EFBFBD> <F2BFAAB5> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
acl_close_on_exec <20> <> <EFBFBD> ܣ<EFBFBD> <DCA3> Է<EFBFBD> ֹ<EFBFBD> <D6B9> <EFBFBD> <EFBFBD> <EFBFBD> ̵<EFBFBD> <CCB5> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݸ<EFBFBD> <DDB8> ӽ<EFBFBD> <D3BD> <EFBFBD>
153.2) master <20> <> <EFBFBD> <EFBFBD> : ʹ <> ӽ<EFBFBD> <D3BD> ̿<EFBFBD> <CCBF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> У <EFBFBD> <D0A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> <EFBFBD> <EFBFBD> л<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƚ<EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ̵<EFBFBD> <CCB5> <EFBFBD> ־<EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> м<EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> <EFBFBD> <EFBFBD> л<EFBFBD> Ϊ
<EFBFBD> <EFBFBD> ͨ<EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݺ<EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> <EFBFBD> Լ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־<EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> м<EFBFBD> ¼
153.3) acl_master <20> <> װ<EFBFBD> <D7B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڰ<EFBFBD> װʱΪ<CAB1> ˱<EFBFBD> ֤<EFBFBD> л<EFBFBD> Ϊ<EFBFBD> <CEAA> ͨ
<EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݵ<EFBFBD> <EFBFBD> ӽ<EFBFBD> <EFBFBD> ̼<EFBFBD> ¼<EFBFBD> <EFBFBD> ־<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> var/log Ŀ¼<C4BF> <C2BC> Ȩ<EFBFBD> <C8A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ 1777; <20> <> <EFBFBD> <EFBFBD> װ
<EFBFBD> <EFBFBD> <EFBFBD> е ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> conf/service/samples/ Ŀ¼<C4BF> <C2BC>
152) 2008.8.18
152.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܣ<EFBFBD> <DCA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <DEB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־<EFBFBD> <D6BE> ¼<EFBFBD> <C2BC>
<EFBFBD> <EFBFBD> <EFBFBD> м<EFBFBD> <EFBFBD> <EFBFBD>
152.2) feature: acl_master <20> <> <EFBFBD> Ը<EFBFBD> <D4B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> (main.cf) <20> е <EFBFBD> scan_subdir
ѡ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÷<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŀ¼<EFBFBD> µķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
152.3) feature: ÿ<> <C3BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master_env <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ʹ <EFBFBD> <EFBFBD> acl_master <20> <> <EFBFBD> ̿<EFBFBD> <CCBF> Խ<EFBFBD> <D4BD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݸ<EFBFBD> <DDB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> <EFBFBD>
152.4) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> samples/master/ <20> µ<EFBFBD> <C2B5> <EFBFBD> <EFBFBD> <EFBFBD>
151) 2008.8.14
151.1) feature: acl_vstream<61> <6D> ʹ ACL_VSTREAM_IN, ACL_VSTREAM_OUT,
ACL_VSTREAM_ERR <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32<33> <32> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> ã<EFBFBD> <C3A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫʹ <D2AA> <CAB9> <EFBFBD> <EFBFBD> Щ<EFBFBD> <D0A9> <EFBFBD> <D7BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 룬
<EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> ǰ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_init() <20> <> <EFBFBD> г <EFBFBD> ʼ <EFBFBD> <CABC>
151.2) samples: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˲<EFBFBD> <CBB2> <EFBFBD> ACL_VSTREAM <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> --samples/vstream
150) 2008.8.12
150.1) bugfix: acl_ioctl.c <20> е <EFBFBD> __on_thread_init <20> <> __on_thread_exit
<EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҵ<EFBFBD> <EFBFBD> ݸ<EFBFBD> <EFBFBD> ص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
149) 2008.8.7
149.1) <20> <> <EFBFBD> ̹<EFBFBD> <CCB9> <EFBFBD> : <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˸ <EFBFBD> <CBB8> <EFBFBD> ƽ ̨<C6BD> µı <C2B5> <C4B1> 빤<EFBFBD> <EBB9A4>
149.2) experiment: avl <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 64λLINUX<55> ±<EFBFBD> <C2B1> <EFBFBD> ͨ<EFBFBD> <CDA8>
149.3) unit_test: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> avl <20> ĵ<EFBFBD> Ԫ<EFBFBD> <D4AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
149.4) compile: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> SUNOS-X86<38> ϱ <EFBFBD> <CFB1> <EFBFBD> ͨ<EFBFBD> <CDA8>
148) 2008.7.30
148.1) samples: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> samples/master/ <20> µļ<C2B5> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӣ<EFBFBD> <D3A3> Ա<EFBFBD> <D4B1> <EFBFBD> ʹ <EFBFBD> <CAB9>
147) 2008.7.23
147.1) samples: <20> <> <EFBFBD> Ӳ<EFBFBD> <D3B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˴ <EFBFBD> WIN32<33> <32> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> FileDir <20> <> <EFBFBD> ӣ<EFBFBD> <D3A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӽ<EFBFBD> <D3BC> <EFBFBD> <EFBFBD> <EFBFBD> ͳ<EFBFBD> <CDB3> Ŀ¼<C4BF> <C2BC>
<EFBFBD> ֿ<EFBFBD> <EFBFBD> Բ<EFBFBD> <EFBFBD> <EFBFBD> AVL<EFBFBD> <EFBFBD> (<28> <> ֲ<EFBFBD> <D6B2> OpenSolaris)
146) 2008.7.19
146.1) feature: acl_scan_dir ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƻ<EFBFBD> <C6BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õĽӿڣ<D3BF> <DAA3> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ûص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͳ<EFBFBD> <EFBFBD>
146.1) samples: FileDir(win32) ɨ<> <C9A8> Ŀ¼<C4BF> ij<EFBFBD> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32<33> <32> ͳ<EFBFBD> <CDB3> Ŀ¼<C4BF> <C2BC> <EFBFBD> <EFBFBD>
145) 2008.7.17
145.1) feature: proctl ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> <EFBFBD> <EFBFBD> ˳<EFBFBD> ʱ<EFBFBD> Ļص<C4BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
145.2) feature: acl_scan_dir ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_scan_stat() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Էdz<D4B7>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <D7BC> stat <20> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> )ȡ<> õ<EFBFBD> ǰ<EFBFBD> <C7B0> ɨ<EFBFBD> <C9A8> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> Ŀ¼<C4BF> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϣ
144) 2008.7.15
144.1) feature: proctl/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32ƽ ̨<C6BD> <CCA8> <EFBFBD> и<EFBFBD> <D0B8> ӽ<EFBFBD> <D3BD> ̿<EFBFBD> <CCBF> Ƶ<EFBFBD> ģ<EFBFBD> 飬֧<E9A3AC> <D6A7>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֹͣ<EFBFBD> <EFBFBD> ij<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> з<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> б <EFBFBD> <EFBFBD> <EFBFBD> ̽<EFBFBD> <EFBFBD> <EFBFBD>
144.2) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32ƽ ̨<C6BD> <CCA8> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <C4B9> <EFBFBD>
144.3) msg/acl_aqueue.c: acl_aqueue_pop_timedwait() <20> <> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ0
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Σ<EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȫΪ0<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵȴ<EFBFBD> ֱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȴ<EFBFBD> ij<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> أ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ڿ<EFBFBD> <EFBFBD> Ե<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
144.4) compile: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC2003, CB++, GCC <20> ±<EFBFBD> <C2B1> <EFBFBD> ͨ<EFBFBD> <CDA8>
143) 2008.7.4
143.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> engine/acl_timer.c, <20> ÿ<EFBFBD> ʵ<EFBFBD> <CAB5> <EFBFBD> ˶<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <C4B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
142) 2008.6.30
142.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> <CBB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 㷨(DEBUG<55> 汾): acl_btree.c
142.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32ƽ ̨<C6BD> µ<EFBFBD> <C2B5> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : acl_myflock.c
142.3) acl_vstream.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_file_ftruncate(), acl_file_truncate()
141) 2008.6.25
141.1) acl_vstring.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstring_memchr<68> <72> acl_vstring_strcasestr<74> <72>
acl_vstring_strstr<EFBFBD> <EFBFBD> acl_vstring_insert<EFBFBD> <EFBFBD> acl_vstring_prepend<EFBFBD> <EFBFBD>
acl_vstring_sprintf_prepend <20> <> <EFBFBD> <EFBFBD>
141.2) samples: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> vstring <20> <> <EFBFBD> Ժ<EFBFBD> <D4BA> <EFBFBD>
140) 2008.6.23
140.1) acl_vstream.c: <20> <> <EFBFBD> <EFBFBD> WIN32ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> ΪAPI<50> <49> ֧<EFBFBD> <D6A7> APPENDģʽ <C4A3> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ACL_VSTREAM <20> ṹ<EFBFBD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> ־λ<D6BE> <CEBB> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <DAB5> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> O_APPEND<4E> <44> <EFBFBD> <EFBFBD> <EFBFBD> Ա<EFBFBD> ֤
<EFBFBD> <EFBFBD> дʱ<EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> β<EFBFBD> <EFBFBD> д(<28> <> <EFBFBD> <EFBFBD> __vstream_sys_writeʱ)(<28> <> Ŀǰ<C4BF> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> <C8AB> <EFBFBD> ع淶
--<2D> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> β)
139) 2008.6.18
139.1) acl_mystring.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> strcasestr
138) 2008.6.17
138.1) acl_fifo.c/acl_fifo.h: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> iterator <20> <> <EFBFBD> <EFBFBD>
138.2) samples: <20> <> <EFBFBD> <EFBFBD> ACL_FIFO <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
137) 2008.6.4
137.1) <20> <> 64λRedhat Linux<75> <78> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
137.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC<56> µĹ<C2B5> <C4B9> <EFBFBD> <EFBFBD> ļ<EFBFBD>
136) 2008.6.3
136.1) acl_mymalloc.h, acl_mymalloc.h: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԵĽӿ<C4BD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͳһ <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵ<EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> λ<EFBFBD> <EFBFBD>
136.2) master/, ioctl/: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̳߳<DFB3> ʼ <EFBFBD> <CABC> <EFBFBD> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> ˳<EFBFBD> <CBB3> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
master/template/acl_ioctl_server.c: ģ<> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̳߳<DFB3> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> ˳<EFBFBD>
<EFBFBD> Ļص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ; samples/master/ioctl_echo/app_main.c(.h) Ҳ<> <D2B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD>
<EFBFBD> <EFBFBD> ʼ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> Ļص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
136.3) unit_test: stdlib/test_malloc.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ܷ<EFBFBD> <EFBFBD> <EFBFBD> ӡ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> Դ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> λ<EFBFBD> <EFBFBD>
135) 2008.5.29
135.1) acl_make_dirs.c: <20> <> ȫ֧<C8AB> <D6A7> WIN32ƽ ̨<C6BD> ´ <EFBFBD> <C2B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŀ¼
134) 2008.5.5
134.1) feature: <20> <> <EFBFBD> <EFBFBD> master <20> <> <EFBFBD> ܣ<EFBFBD> <DCA3> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <C4B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ýӿڣ<D3BF> <DAA3> <EFBFBD> <EFBFBD> <EFBFBD>
Ӧ<EFBFBD> ÿ<EFBFBD> <EFBFBD> ԱȽϷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ض<EFBFBD> ȡ<EFBFBD> Լ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
134.2) bugfix: acl_inet_listen() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> Ѿ<EFBFBD> <D1BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> ַʱ<D6B7> <CAB1> <EFBFBD> <EFBFBD> ־<EFBFBD> <D6BE>
¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> bind() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־<EFBFBD> <D6BE> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> е ĸ<D0B5> <C4B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD>
133) 2008.4.30
133.1) bugfix: db/memdb/acl_mdt.c <20> е <EFBFBD> acl_mdt_delete() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> BUG<55> <47>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȷɾ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
132) 2008.4.29
132.1) feature: db/memdb, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_mdt_list <20> ӿڿ<D3BF> <DABF> <EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> г <EFBFBD> ij<EFBFBD> <C4B3> <EFBFBD> <EFBFBD> Χ
<EFBFBD> Ľ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ; acl_mdt_walk <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> Χ <EFBFBD> <CEA7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
131) 2008.4.28
131.1) bugfix: stdlib/acl_vstream.c, acl_vstream_probe_status() <20> <> UNIX
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> н<EFBFBD> <EFBFBD> ӿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Իᵼ<EFBFBD> µ<EFBFBD> <EFBFBD> øú<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
Ϊ db/null/ <20> <> <EFBFBD> ӳص<D3B3> ȱʡ̽<CAA1> <CCBD> <EFBFBD> <EFBFBD> <EFBFBD> ӵķ<D3B5> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> ˴ ˺<CBB4> <CBBA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ե<EFBFBD> <D4B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
131.2) feature: db/ (<28> <> <EFBFBD> ݿ<EFBFBD> )<29> <> <EFBFBD> ӳ<EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> Լ<EFBFBD> <D4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Լ<EFBFBD> <D4BC> <EFBFBD> ̽<EFBFBD> <CCBD> ģ<EFBFBD> <C4A3>
131.3) feature: db/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ֹ<EFBFBD> ǿ<EFBFBD> Ƽ <EFBFBD> <C6BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӳ<EFBFBD> <D3B3> <EFBFBD> <EFBFBD> ӵĺ<D3B5> <C4BA> <EFBFBD>
130) 2008.4.24-4.25
130.1) performance: master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> Զ<EFBFBD> <D4B6> ̵߳ķ<CCB5> <C4B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ż<EFBFBD> <C5BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ڶ<EFBFBD> <EFBFBD> ߳<EFBFBD> <EFBFBD> ¼<EFBFBD> ѭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> <EFBFBD> ӳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ; <20> <> <EFBFBD> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> ֮<EFBFBD> <D6AE> <EFBFBD> ص<EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD>
engine/, ioctl/, master/template/acl_ioctl_server.c
130.2) feature: stdlib/common<6F> <6E> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> µ<EFBFBD> CRC64<36> <34> <EFBFBD> 㷨<EFBFBD> <E3B7A8> <EFBFBD> ɹ<EFBFBD> <C9B9> <EFBFBD> <EFBFBD> Ը<EFBFBD> <D4B8> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ṩ
129) 2008.4.23
129.1) feature: db/memdb<64> <62> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̽<EFBFBD> <CCBD> ij<EFBFBD> <C4B3> <EFBFBD> ֶ<EFBFBD> ֵ<EFBFBD> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݱ<EFBFBD> <DDB1> е ĺ<D0B5> <C4BA> <EFBFBD>
128) 2008.4.21
128.1) <20> <> BORLAND CBuilter6 <20> ϱ <EFBFBD> <CFB1> <EFBFBD> ͨ<EFBFBD> <CDA8>
128.2) db/memdb: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ؽӿڣ<D3BF> ʹ <EFBFBD> <CAB9> <EFBFBD> ø<EFBFBD> <C3B8> <EFBFBD> <EFBFBD> 㣬Ч<E3A3AC> ʸ<EFBFBD> <CAB8> <EFBFBD>
128.3) bugfix: acl_vstream.c <20> ж<EFBFBD> wbuf_size <20> ij<EFBFBD> ʼ <EFBFBD> <CABC> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡΪ
sizeof(stream->wbuf_size) - 1<> <31> Ӧ<EFBFBD> <D3A6> Ϊ sizeof(stream->wbuf)<29> <> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> ˴ <EFBFBD> <CBB4> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_buffed_writen <20> <> Ч<EFBFBD> ʣ<EFBFBD> <CAA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> ֽ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> Ϊ
ϵͳĬ<EFBFBD> ϲ <EFBFBD> <EFBFBD> <EFBFBD> TCP_NODELAY<41> <59> <EFBFBD> <EFBFBD> <EFBFBD> Ի<EFBFBD> <D4BB> <EFBFBD> <EFBFBD> ܻ<EFBFBD> <DCBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӳ<EFBFBD> !
128.4) bugfix: db/ <20> <> <EFBFBD> ӳ<EFBFBD> <D3B3> м<EFBFBD> <D0BC> δ<EFBFBD> <CEB4> <EFBFBD> <F3A3ACBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
127) 2008.4.19
127.1) bugfix: acl_sys_patch.c <20> е <EFBFBD> acl_file_open <20> <> WIN32<33> µ<EFBFBD> ʵ<EFBFBD> <CAB5> <EFBFBD> <EFBFBD> Щ
<EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <EFBFBD> <EFBFBD> ½<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
126) 2008.4.17
126.1) bugfix: acl_vstream_fileno, ACL_VSTREAM_FILENO <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ô<EFBFBD> <C3B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,
<EFBFBD> <EFBFBD> Ϊ֮ǰ<EFBFBD> <EFBFBD> ACL_VSTREAM <20> <> <EFBFBD> е ľ<D0B5> <C4BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <D7BD> ּ<EFBFBD> <D6BC> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> н<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ѿ<EFBFBD> <D1BE> <EFBFBD> <EFBFBD> <EFBFBD> stream->type <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ͽ<EFBFBD> <CDBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> ڷֱ<DAB7>
<EFBFBD> <EFBFBD> ACL_VSTREAM_SOCK, ACL_VSTREAM_FILE <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD> <D7BD> ֻ<EFBFBD> <D6BB> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD>
126.2) stdlib/acl_vstream.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> ſ <EFBFBD>
125) 2008.4.16
125.1) db/memdb: <20> <> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <DDBF> <EFBFBD> <EFBFBD> ڲ<EFBFBD> ʹ <EFBFBD> õ<EFBFBD> ACL_RING<4E> <EFBFBD> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9>
<EFBFBD> <EFBFBD> MDB_RING, MDB_RING <20> б <EFBFBD> ACL_RING <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֶδӶ<CEB4> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> ռ <EFBFBD> <D5BC> ;
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֶε<EFBFBD> Լ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӹ<EFBFBD> <EFBFBD> <EFBFBD>
124) 2008.4.15
124.1) examples: <20> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> С <EFBFBD> <D0A1> <EFBFBD> ߣ<EFBFBD> <DFA3> <EFBFBD> <EFBFBD> Խ<EFBFBD> Դ<EFBFBD> <D4B4> <EFBFBD> <EFBFBD> <EFBFBD> ĸ<EFBFBD> ʽ ת<CABD> <D7AA> <EFBFBD> <EFBFBD> :
UNIX, DOS, MAC <20> <> <EFBFBD> ָ<EFBFBD> ʽ
124.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С <EFBFBD> <D0A1> <EFBFBD> ߽<EFBFBD> acl <20> <> <EFBFBD> <EFBFBD> ͳһ ת<D2BB> <D7AA> <EFBFBD> <EFBFBD> UNIX<49> <58> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> ʽ
123) 2008.4.9
123.1) db/null, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <DDBF> <EFBFBD> <EFBFBD> ӳؿ<D3B3> <D8BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> TCP<43> <50> <EFBFBD> ӳؿ<D3B3>
122) 2008.4.3
122.1) <20> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ݿ⣬<DDBF> <E2A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݽ<EFBFBD> <DDBD> <EFBFBD> <EFBFBD> Ŀ<EFBFBD> ¡<EFBFBD> <C2A1> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ò<EFBFBD> ѯ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õĻص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̲߳<EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
121) 2008.4.2
121.2) acl_define_linux.h: <20> <> <EFBFBD> <EFBFBD> g++
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> _GNU_SOURCE<EFBFBD> ᱻ<EFBFBD> Զ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 壬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> _LARGEFILE64_SOURCE
120) 2008.3.29-4.1
120.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ݿ<EFBFBD> ģ<EFBFBD> <C4A3> (db/memdb/)<29> <> ֧<EFBFBD> ָ<EFBFBD> <D6B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> ϣ<EFBFBD> <CFA3> ϵ<EFBFBD> <CFB5> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ɾ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȥ<EFBFBD> <EFBFBD> <EFBFBD> ˿<EFBFBD> <EFBFBD> ܻ<EFBFBD> Ӱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܵĶ<EFBFBD> ̬<EFBFBD> <EFBFBD> <EFBFBD> 鲿<EFBFBD> ֣<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˫<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƶ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> ˲<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> samples/memdb/
<EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> ģ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ص㣺
1<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͬһ <EFBFBD> <EFBFBD> <EFBFBD> ݲ<EFBFBD> <EFBFBD> ò<EFBFBD> ͬ<EFBFBD> Ĺؼ<EFBFBD> <EFBFBD> ֶν <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
2<EFBFBD> <EFBFBD> ֧<EFBFBD> ֶ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
3<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӡ<EFBFBD> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <EFBFBD> ɾ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Dz<EFBFBD> <EFBFBD> ù<EFBFBD> ϣ<EFBFBD> <EFBFBD> λ<EFBFBD> <EFBFBD> ʽ
4<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˫<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̬<EFBFBD> <EFBFBD> <EFBFBD> 飬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ɾ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
5<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӱ<EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> ռ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݽṹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С (<28> <> <EFBFBD> <EFBFBD> Щ<EFBFBD> <D0A9> Ҫ<EFBFBD> Ż<EFBFBD> ѹ<EFBFBD> <D1B9> <EFBFBD> ĵط<C4B5> )
119) 2008.3.27
119.1) compiling: <20> <> LINUX<55> <58> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8>
118) 2008.3.25
118.1) bugfix: <20> <> acl_aio_xxx <20> У <EFBFBD> <D0A3> <EFBFBD> Ϊ<EFBFBD> 첽<EFBFBD> <ECB2BD> д<EFBFBD> <D0B4> <EFBFBD> ܻᱻǶ<E1B1BB> <EFBFBD> <D7B5> ã<EFBFBD> <C3A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> п<EFBFBD> <D0BF> <EFBFBD>
<EFBFBD> ᷵<EFBFBD> <EFBFBD> -1 <20> <> ֵ<EFBFBD> <D6B5> <EFBFBD> Ӷ<EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> 磺http_chat_async.c <20> Ķ<EFBFBD> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <CEAA>
<EFBFBD> ˴ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͳһ <EFBFBD> <EFBFBD> acl_aio_read, acl_aio_readn, acl_aio_gets, acl_aio_gets_nonl,
acl_aio_writen, acl_aio_vfprintf, acl_aio_fprintf<74> Ⱥ<EFBFBD> <C8BA> <EFBFBD> <EFBFBD> ķ<EFBFBD> <C4B7> <EFBFBD> ֵΪ >=0<> <30> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <EFBFBD> ̲<EFBFBD> Ӧ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <EFBFBD> Ƿ<EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> ɹ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ӻص<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> н<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> жϣ<EFBFBD>
<EFBFBD> <EFBFBD> Ϊ<EFBFBD> 첽<EFBFBD> <EFBFBD> д<EFBFBD> <EFBFBD> <EFBFBD> ̶<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽<EFBFBD> ģ<EFBFBD> Ϊ<EFBFBD> ˱<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ң<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ѿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ķ<EFBFBD> <EFBFBD> <EFBFBD> ֵΪ void
117) 2008.3.20
117.1) <20> <> <EFBFBD> °汾<C2B0> <E6B1BE> LINUX<55> ±<EFBFBD> <C2B1> <EFBFBD> ͨ<EFBFBD> <CDA8>
<EFBFBD> <EFBFBD> Linux<EFBFBD> £<EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> Makefile<EFBFBD> ļ<EFBFBD> <EFBFBD> ı <EFBFBD> <EFBFBD> <EFBFBD> ѡ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> -Wno-long-long <20> Ӷ<EFBFBD> ֧<EFBFBD> <D6A7>
long long <20> <> <EFBFBD> <EFBFBD>
116) 2008.3.19
116.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> 64λϵͳ<CFB5> <CDB3> һ Щ֧<D0A9> ֣<EFBFBD> ͬʱ֧<CAB1> <D6A7> <EFBFBD> <EFBFBD> 32λϵͳ<CFB5> <CDB3> ģ<EFBFBD> <C4A3> 64λ<34> <CEBB> һ Щ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> У <EFBFBD>
acl_define_linux.h, acl_define_win32.h, acl_mystring.h, acl_sys_patch.h,
acl_vstream.h, acl_define.h, acl_dlink.h, acl_msg.c, squid_allocator_tools.c,
acl_sys_patch.c, acl_vstream.c, acl_dlink.c, acl_mystring.c, acl_vstream_net.c,
116.2) feature: <20> <> WIN32ƽ ̨<C6BD> £<EFBFBD> <C2A3> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> IJ<EFBFBD> <C4B2> <EFBFBD> ֱ<EFBFBD> <D6B1> <EFBFBD> <EFBFBD> WIN32<33> <32> API<50> <49> <EFBFBD> Ӷ<EFBFBD> ֧<EFBFBD> ִ<EFBFBD> <D6B4> ļ<EFBFBD> <C4BC> <EFBFBD>
<EFBFBD> <EFBFBD> д<EFBFBD> Ȳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֧<EFBFBD> <EFBFBD> LINUXƽ ̨<EFBFBD> ´ <EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> , <20> <> Ҫ<EFBFBD> <D2AA> acl_define_linux.h <20> <> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD>
# define _LARGEFILE64_SOURCE
# define _FILE_OFFSET_BITS 64
<EFBFBD> <EFBFBD> acl_vstream.c <20> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> ļ<EFBFBD> ʱ<EFBFBD> <CAB1> Ҫָ<D2AA> <D6B8> O_LARGEFILE <20> <EFBFBD> <F2BFAAB2> <EFBFBD>
116.3) comment: acl_mystring.h <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˱Ƚ<CBB1> <C8BD> <EFBFBD> ϸ<EFBFBD> <CFB8> ͷ<EFBFBD> ļ<EFBFBD> <C4BC> к<EFBFBD> <D0BA> <EFBFBD> <EFBFBD> ӿ<EFBFBD> ע<EFBFBD> <D7A2>
116.4) <20> ڲ<EFBFBD> ʹ <EFBFBD> <CAB9> snprintf <20> <> <EFBFBD> <EFBFBD> ʱʹ <CAB1> <CAB9> ϵͳĬ<CDB3> ϵ<EFBFBD> snprintf, <20> <> WIN32ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> _snprintf
115) 2008.2.20
115.1) bugfix: acl_dlink.c, acl_iplink.c, ֮ǰ<D6AE> <C7B0> <EFBFBD> <EFBFBD> begin = 0 ʱ<> <CAB1> <EFBFBD> ܽ<EFBFBD> <DCBD> в<EFBFBD> <D0B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
114) 2008.2.19
114.1) performance: acl_vstream.c <20> У <EFBFBD> ֮ǰδ<C7B0> <CEB4> <EFBFBD> ö<EFBFBD> <C3B6> ַ<EFBFBD> <D6B7> <EFBFBD> <EFBFBD> ٺ궨<D9BA> <EAB6A8>
113) 2008.2.3
113.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> squid <20> ķּ<C4B7> <D6BC> <EFBFBD> ¼<EFBFBD> <C2BC> ־<EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> acl_debug.c/acl_debug.h
113.2) <20> <> acl_argv_split.h ȥ<> <C8A5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е ĺ<D0B5> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϲ <EFBFBD> <CFB2> <EFBFBD> acl_argv.h <20> <>
112) 2008.2.2
112.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_iplink <20> ⣬<EFBFBD> <E2A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ acl_dlink <20> Ӷ<EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> ֿ<EFBFBD> <D6BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 㷨
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> ã<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_iplink <20> <> <EFBFBD> <EFBFBD> acl_dlink <20> м̳<D0BC>
111) 2008.1.29
111.1) vc <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> : <20> <> debug <20> <> <EFBFBD> Ŀ<EFBFBD> <C4BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> _d, <20> <> lib_acl.lib <20> <> debug <20> 汾<EFBFBD> <E6B1BE>
Ϊ lib_acl_d.lib<69> <62> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ǹ<EFBFBD> <C7B8> <EFBFBD> <EFBFBD> 汾<EFBFBD> <E6B1BE> DEBUG<55> 汾<EFBFBD> <E6B1BE> <EFBFBD> <EFBFBD> :
lib_acl_d.lib, lib_acl_mysql_d.lib, lib_protocol_d.lib
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> RELEASE<EFBFBD> 汾<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> :
lib_acl.lib, lib_acl_mysql.lib, lib_protocol.lib
110) 2008.1.24
110.1) Bugfix: acl_ring.c, <20> <> acl_ring_append(), acl_ring_prepend() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,
<EFBFBD> ²<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> parent <20> <> Ӧ<EFBFBD> <D3A6> ring, <20> <> entry->parent <20> <> Ӧ<EFBFBD> <D3A6> ring, <20> <> Ӧ<> <D3A6> ring->parent,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܱ<EFBFBD> ֤<EFBFBD> <EFBFBD> <EFBFBD> н<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> parent <20> <> ָ<EFBFBD> <D6B8> ͬһ <CDAC> <D2BB> ring header, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> Ƿ<EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> unix_trigger.c <20> Ĺ<EFBFBD> <C4B9> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> Ϊ<EFBFBD> ڲ<EFBFBD> <DAB2> Դ<EFBFBD> <D4B4> 緢<EFBFBD> <E7B7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> unix_trigger.c <20> е <EFBFBD> __USE_TIMER, <20> <EFBFBD> <F2B5B1B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> ʱ<EFBFBD> <CAB1> С <EFBFBD> <D0A1> ÿ<EFBFBD> <C3BF> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ӿڵij<EFBFBD> ʱʱ<EFBFBD> <EFBFBD> ʱ<EFBFBD> ᷢ<EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> Խ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> ϵͳ<CFB5> <CDB3> <EFBFBD> <EFBFBD> valgrind <20> <> <EFBFBD> Էdz<D4B7> <C7B3> <EFBFBD> <EFBFBD> <EFBFBD> <D7B7> ִ<EFBFBD> <D6B4> <EFBFBD> <EFBFBD> <EFBFBD> ,
Ϊ<EFBFBD> <EFBFBD> <EFBFBD> ҳ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> 䣬Ҳ<EFBFBD> <EFBFBD> <EFBFBD> ˺ܶ<EFBFBD> <EFBFBD> <EFBFBD> ·<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> żȻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ı <EFBFBD> <EFBFBD> ʲ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_ring.c <20> ж<EFBFBD> parent <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ô<EFBFBD> <C3B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⡣<EFBFBD> Ǻǣ<C7BA> <C7A3> <EFBFBD> <EFBFBD> ѷ<EFBFBD> <D1B7> <EFBFBD>
<EFBFBD> <EFBFBD> BUG<EFBFBD> <EFBFBD> valgrind is very good!
109) 2008.1.16
109.1) acl_vstream.c: ȫ<> ̸<EFBFBD> <CCB8> <EFBFBD> ij<EFBFBD> <C4B3> <EFBFBD> ӿڵ<D3BF> <DAB5> <EFBFBD> д<EFBFBD> <D0B4> <EFBFBD> ֽ<EFBFBD> <D6BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܶ<EFBFBD> <DCB6> <EFBFBD> <EFBFBD> ֽ<EFBFBD> <D6BD> <EFBFBD>
109.2) acl_vstream.c: acl_vstream_xxx_ready <20> <> <EFBFBD> ͵ĺ<CDB5> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> <DFBC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
109.3) acl_aio_read.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Է<EFBFBD> <D4B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_EWOULDBLOCK, ACL_EAGAIN <20> Ĵ<EFBFBD> <C4B4> <EFBFBD>
109.4) acl_aio_read.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> <DFBC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
109.5) acl_aio.c: acl_aio_open() <20> <> ǿ<EFBFBD> ƽ <EFBFBD> <C6BD> <EFBFBD> <D7BD> <EFBFBD> תΪ<D7AA> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ
109.6) acl_inet_listen.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӳٽ<D3B3> <D9BD> յĹ<D5B5> <C4B9> <EFBFBD> (TCP_DEFER_ACCEPT)<29> <> Ĭ<EFBFBD> ϵ<EFBFBD> <CFB5> ӳ<EFBFBD> accept
ʱ<EFBFBD> <EFBFBD> Ϊ30<EFBFBD> 롣
108) 2008.1.15
108.1) acl_dbpool_mysql.c: һ Щ<D2BB> <D0A9> ־<EFBFBD> ļ<EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> ˿<EFBFBD> <CBBF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ã<EFBFBD> <C3A3> <EFBFBD> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> acl_msg_verbose<73> <65> <EFBFBD> <EFBFBD>
107) 2008.1.10
107.1) acl_netdb_cache.c: DNS<4E> <53> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <E2A3AC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <DEB8> <EFBFBD>
106) 2008.1.9
106.1) acl_htable.c: acl_htable_enter, acl_htable_enter_r <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> KEYʱ<59> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ־<EFBFBD> <EFBFBD> <EFBFBD> 棬<EFBFBD> û<EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> KEY<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᵼ<EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й©<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
105) 2008.1.8
105.1) bugfix: acl_http_header.c->__add_request_item<65> <6D> __add_cookie_item<65> <6D> <EFBFBD> жԱ<D0B6> <D4B1> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> Ĵ洢ԭ<EFBFBD> <EFBFBD> δ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ظ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ᵼ<EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й©<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> HTTP<EFBFBD> ⽫<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL<EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> ȥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҹò<EFBFBD> <EFBFBD> ֺ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> BUG<EFBFBD> <EFBFBD> <EFBFBD> ⲻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŀ<EFBFBD> <EFBFBD> lib_protocol <20> <> <EFBFBD> ṩ<EFBFBD> <E1B9A9> <EFBFBD> <EFBFBD>
<EFBFBD> õ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ը<EFBFBD> <EFBFBD> <EFBFBD> Э<EFBFBD> 鴦<EFBFBD> <EFBFBD> <EFBFBD> Ľ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
104) 2008.1.7
104.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_define.h <20> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WIN32<33> <32> <EFBFBD> صĶ<D8B5> <C4B6> <EFBFBD> <EFBFBD> <EFBFBD> Ϊһ <CEAA> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD>
acl_define_win32.h<> <68> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_define.h <20> ͱȽ<CDB1> <C8BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˡ<EFBFBD>
ע<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VC<EFBFBD> <EFBFBD> extern<72> <6E> C++<2B> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƣ<EFBFBD> <C6A3> ᵼ<EFBFBD> ±<EFBFBD> <C2B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
"fatal error C1045: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : <20> <> <EFBFBD> ӹ淶Ƕ<E6B7B6> <C7B6> ̫<EFBFBD> <CCAB> "
<EFBFBD> <EFBFBD> <EFBFBD> ˣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_define_xxx.h <20> ļ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> extern "C" <20> <> <EFBFBD> <EFBFBD> Щ<EFBFBD> <D0A9> <EFBFBD> ļ<EFBFBD> ȥ<EFBFBD> <C8A5> <EFBFBD> ˡ<EFBFBD>
<EFBFBD> <EFBFBD> GCC<EFBFBD> <EFBFBD> BC++ȴû<C8B4> <C3BB> <EFBFBD> ⷽ<EFBFBD> <E2B7BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> Ǻǡ<C7BA> <C7A1> <EFBFBD> <EFBFBD> <EFBFBD> BC++Ҳ<> б Ƚ<D0B1> <C8BD> <EFBFBD> <EFBFBD> ĵط<C4B5> <D8B7> <EFBFBD> <EFBFBD> ڱ<EFBFBD> <DAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> 뱣֤<EFBFBD> <EFBFBD> <EFBFBD> ̵ģ<EFBFBD> option->Tlib->Page size ѡ <> <D1A1> Ϊ 0x0020<32> <30> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵΪ 0x0010<31> <30>
BC++Ҳ<> ᱨһ <E1B1A8> <D2BB> <EFBFBD> Ƚ<EFBFBD> <C8BD> <EFBFBD> <EFBFBD> ı <EFBFBD> <C4B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> £<EFBFBD>
[TLib Error] library too large, please restart with library page size 32
104.2) lib_acl/Makefile, Makefile.mysql: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> MYSQL<51> ı <EFBFBD> <C4B1> <EFBFBD> ֧<EFBFBD> <D6A7>
104.3) dist: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> ר<EFBFBD> <D7A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܵİ<DCB5> װ<EFBFBD> <D7B0> .
103) 2008.1.5
103.1) acl_aio.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˴ <EFBFBD> <CBB4> 첽<EFBFBD> <ECB2BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> 첽<EFBFBD> <ECB2BD> <EFBFBD> ܾ<EFBFBD> <DCBE> <EFBFBD> <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> : acl_aio_handle();
103.2) acl_aio_server.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_aio_server_handle()<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> ں<EFBFBD> <DABA> <EFBFBD> <EFBFBD> Լ<EFBFBD>
<EFBFBD> <EFBFBD> post_init()<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> <D6B1> ͨ<EFBFBD> <CDA8> <EFBFBD> ˺<EFBFBD> <CBBA> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> 첽<EFBFBD> <ECB2BD> <EFBFBD> ܾ<EFBFBD> <DCBE> <EFBFBD> <EFBFBD> <EFBFBD>
103.2) acl_aio_server.c: bugfix, <20> <> acl_master <20> ˳<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> ڸ<EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> ̲<EFBFBD> <CCB2> ˳<EFBFBD> <CBB3> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽<EFBFBD> <EFBFBD> <EFBFBD> Ĺر<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ء<EFBFBD>
102) 2007.12.30
102.1) acl_aio_read.c: <20> <EFBFBD> <DEB8> ˼<EFBFBD> <CBBC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
102.2) acl_vstream.c: Ϊ acl_aio_ <20> 첽<EFBFBD> <ECB2BD> <EFBFBD> ṩ<EFBFBD> ˸ <EFBFBD> <CBB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ľӿ<C4BD>
102.3) unix_trigger.c, inet_trigger.c, stream_trigger.c: <20> <> <EFBFBD> <EFBFBD> events_proc.c <20> <>
<EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IO<EFBFBD> ¼<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڳ<EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> ¼<EFBFBD> <EFBFBD> Ķ<EFBFBD> ʱ<EFBFBD> <EFBFBD> ȥ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ֱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IO<EFBFBD> ij<EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
101) 2007.12.25
101.1) master_status.c: master_status_event <20> <> <EFBFBD> <EFBFBD> <EFBFBD> н<EFBFBD> acl_vstream_readn<64> <EFBFBD> Ϊread
101.2) acl_aio.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> е ĵ<D0B5> <C4B5> <EFBFBD> timeo_fn()ǰ<> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ü<EFBFBD> <C3BC> <EFBFBD> <EFBFBD> ķ<EFBFBD> <C4B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֹ<EFBFBD> <D6B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> 쳣<EFBFBD> ر<EFBFBD>
101.3) acl_aio.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> رյı <D5B5> <C4B1> <EFBFBD> λ closing ͳһ <CDB3> <D2BB> nrefer <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
101.4) acl_aio.c: <20> <> Ϊ<EFBFBD> <CEAA> <EFBFBD> ļ<EFBFBD> ̫<EFBFBD> <CCAB> <EFBFBD> ˣ<EFBFBD> <CBA3> <EFBFBD> <EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> <EFBFBD> ˷ָ<D6B8> ֳɼ<D6B3> <C9BC> <EFBFBD> С ģ<D0A1> <C4A3> <EFBFBD> ļ<EFBFBD>
100) 2007.12.16
100.1) db/acl_dbsql.c, mysql/acl_dbmysql.c: <20> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> <C4B2> <EFBFBD> my_row <20> <> Ӧ<EFBFBD> <D3A6> MYSQL_ROW
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ const void**, ԭ<> <D4AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ const void*, <20> <> GCC<43> ±<EFBFBD> <C2B1> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD>
100.2) msg/acl_aqueue.c, acl_aqueue_pop_timedwait <20> ĵȴ<C4B5> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ΪUNIX
<EFBFBD> <EFBFBD> WIN32<EFBFBD> в<EFBFBD> ͬ<EFBFBD> <EFBFBD>
100.3) protocol/, <20> <> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> HTTP_STATUS_״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD> VC<56> ij<EFBFBD> ͻ<EFBFBD> <CDBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> HTTP_STATUS_
ΪHTTP_CHAT_<EFBFBD> <EFBFBD>
99) 2007.12.13
99.1) db/acl_dbpool.c: acl_dbpool_destroy<6F> <79> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> BUG<55> <47> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ٺ<EFBFBD> <D9BA> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ٴ<EFBFBD> <EFBFBD> ظ<EFBFBD> <EFBFBD> ͷ<EFBFBD> ͬһ <EFBFBD> <EFBFBD> <EFBFBD> ڴ档
98) 2007.12.7
98.1) acl_define.h: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_unused <20> 궨<EFBFBD> 壬<EFBFBD> <E5A3AC> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ñ<EFBFBD> <C3B1> <EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD> ʱ<EFBFBD> ľ<EFBFBD> <C4BE> <EFBFBD>
97) 2007.11.6
97.1) aio/acl_aio.c: <20> <> ֹ<EFBFBD> <D6B9> ©<EFBFBD> <C2A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> ر<EFBFBD> <D8B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> ص<EFBFBD> <D8B5> <EFBFBD> <EFBFBD> ش<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> ж<EFBFBD> <EFBFBD> Dz<EFBFBD> <EFBFBD> Ǵ<EFBFBD> <EFBFBD> <EFBFBD> IO<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӳ<EFBFBD> ״̬
97.2) aio/acl_aio.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> ע<EFBFBD> <D7A2> ˵<EFBFBD> <CBB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> ø<EFBFBD> <C3B8> ӵ<EFBFBD> <D3B5> 첽<EFBFBD> <ECB2BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ⣬<EFBFBD> <EFBFBD> Ϊ<EFBFBD> ÿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȷʵ<EFBFBD> Ƚϸ<EFBFBD> <EFBFBD> <EFBFBD>
97.3) feature: acl_netdb.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_DNS_DB <20> ĺ<EFBFBD> <C4BA> <EFBFBD>
acl_netdb_addip
96) 2007.11.5
96.1) aio/acl_aio.c: <20> <> ֤<EFBFBD> <D6A4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ дʧ<D0B4> ܴ<EFBFBD> <DCB4> <EFBFBD> <EFBFBD> ŵĴ<C5B5> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> ȷ<EFBFBD> Ҽ<EFBFBD> <D2BC> ݸ<EFBFBD> ƽ ̨
96.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> errno, <20> <> <EFBFBD> <EFBFBD> ת<EFBFBD> <D7AA> Ϊ acl_last_error(), <20> <> strerror()
ת<EFBFBD> <EFBFBD> Ϊ acl_last_strerror()<29> <> <EFBFBD> Ӷ<EFBFBD> <D3B6> <EFBFBD> ֤ƽ ̨<C6BD> <CCA8> <EFBFBD> <EFBFBD> ֲ<EFBFBD> <D6B2>
96) 2007.11.3
96.1) net/listen/acl_inet_listen.c: acl_inet_listen():
if (nport <= 0) --> if (nport < 0), <20> <> Ϊacl_msgio_listen<65> <6E> <EFBFBD> ݹ<EFBFBD> <DDB9> <EFBFBD> <EFBFBD> ĵ<EFBFBD> ַΪ
"127.0.0.1:0" <20> ĸ<EFBFBD> ʽ <EFBFBD> <CABD> Ŀ<EFBFBD> <C4BF> <EFBFBD> <EFBFBD> <EFBFBD> ò<EFBFBD> <C3B2> <EFBFBD> ϵͳ<CFB5> Զ<EFBFBD> <D4B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˿ں<CBBF>
95) 2007.11.2
95.1) <20> <EFBFBD> <DEB8> <EFBFBD> protocol/ <20> µIJ<C2B5> <C4B2> ֺ<EFBFBD> <D6BA> <EFBFBD>
94) 2007.11.28--11.30
94.1) <20> <> <EFBFBD> <EFBFBD> master/ ģ<> <C4A3>
94.2) <20> Ѻô<C3B4> <F3BEA2B2> ҳ<EFBFBD> acl_master <20> <EFBFBD> <DEB7> <EFBFBD> AS3.0 <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> ԭ<EFBFBD> <D4AD> : <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
acl_define.h <20> ж<EFBFBD> <D0B6> <EFBFBD> HAS_DUPLEX_PIPE, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ᵼ<EFBFBD> <E1B5BC>
master/framework/master_status.c <20> е <EFBFBD> acl_master_status_init() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> stdlib/iostuff/acl_duplex_pipe.c <20> е <EFBFBD> acl_duplex_pipe() <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Զ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> pipe() ģʽ.
93) 2007.11.27
93.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> ¸ <EFBFBD> <C2B8> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> λ<EFBFBD> <CEBB>
93.2) <20> <> LINUX<55> <58> WINDOWS<57> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
92) 2007.11.26
92.1) stdlib/acl_msg.c, acl_mylog.c: <20> <> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> ̺<EFBFBD> <CCBA> <EFBFBD> <EFBFBD> ̺߳<DFB3>
91) 2007.11.25
91.1) db: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
91.2) thread: <20> <> <EFBFBD> <EFBFBD> WIN32<33> <32> <EFBFBD> <EFBFBD> MYSQL<51> <4C> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ, pthread_xxx <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> MYSQL<51> Ŀ<EFBFBD>
<EFBFBD> <EFBFBD> ͻ, <20> <> <EFBFBD> Խ<EFBFBD> thread/ <20> µ<EFBFBD> pthread_xxx <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ acl_pthread_xxx
90) 2007.11.23
90.1) portable: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ŭ<EFBFBD> <C5AC> , <20> <> <EFBFBD> ڽ<EFBFBD> WINDOWS<57> 汾<EFBFBD> <E6B1BE> ACL<43> <4C> UNIX<49> 汾<EFBFBD> <E6B1BE> ACL<43> ϲ <EFBFBD> <CFB2> <EFBFBD> :)
89) 2007.11.11--11.12
89.1) feature: add the trigger framework to acl_master.
89.2) example: samples/master/trigger/, add one example for trigger
88) 2007.9.11
88.1) example: samples/http_probe, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̽<EFBFBD> <CCBD> HTTP<54> <50> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ״̬<D7B4> <CCAC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
87) 2007.9.10
87.1) bugfix: spool/acl_spool.c, <20> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ص<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> Բ<EFBFBD> <D4B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ж<EFBFBD> <D0B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
87.2) bugfix: proto/http/http_chat.c, <20> <> HTTPЭ<50> <D0AD> <EFBFBD> Ľ<EFBFBD> <C4BD> մ<EFBFBD> <D5B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
86) 2007.8.30
86.1) performance: master/acl_master_listen.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӿڵļ<DAB5> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
main.cf <20> е <EFBFBD> default_process_limit ֵ, <20> <> <EFBFBD> <EFBFBD> ֵ<EFBFBD> Ƚ<EFBFBD> С ʱ<D0A1> ᵼ<EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> ӿڵļ<DAB5> <C4BC> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҳ<EFBFBD> Ƚ<EFBFBD> С , <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> Ӱ<EFBFBD> <D3B0> <EFBFBD> <EFBFBD> accept() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , ͨ<> <CDA8> <EFBFBD> <EFBFBD> acl_master_listen.c
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> С <EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֤ accept() <20> <> <EFBFBD> <EFBFBD> .
87.2) bugfix: master/acl_aio_server.c->aio_server_wakeup() <20> е <EFBFBD> acl_vstream_fdopen
<EFBFBD> е Ķ<EFBFBD> д<EFBFBD> <EFBFBD> ʱʱ<EFBFBD> <EFBFBD> Ӧ<EFBFBD> <EFBFBD> Ϊ 0, <20> <> Ϊ<EFBFBD> ڷ<EFBFBD> <DAB7> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ <C4A3> <CABD> <EFBFBD> ӿڵĶ<DAB5> д<EFBFBD> <D0B4> ʱʱ<CAB1> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> ѭ<EFBFBD> <D1AD>
<EFBFBD> <EFBFBD> <EFBFBD> ƽ <EFBFBD> <EFBFBD> п<EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ<EFBFBD> <D6B5> <EFBFBD> <EFBFBD> 0, <20> <> <EFBFBD> <EFBFBD> stdlib/acl_vstream.c <20> н<EFBFBD> <D0BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IO<49> <4F> ʱ
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> select() ϵͳ<CFB5> <CDB3> <EFBFBD> <EFBFBD> , <20> ⽫<EFBFBD> <E2BDAB> Ӱ<EFBFBD> <D3B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ <C4A3> <CABD> IO<49> <4F> <EFBFBD> <EFBFBD> .
85) 2007.8.26
85.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> /dev/poll for solaris.
85.2) <20> <> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> engine/ <20> <> <EFBFBD> ¼<EFBFBD> <C2BC> ӿ<EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> ײ<EFBFBD> <D7B2> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> ӿ<EFBFBD> , ʹ <> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <EFBFBD> ӿ<EFBFBD> (engine/events_define.h <20> д<EFBFBD> <D0B4> <EFBFBD> ACL_EVENTS_KERNEL <20> <>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> solaris <20> <> ʹ <EFBFBD> <CAB9> /dev/oll <20> <> <EFBFBD> <EFBFBD> Linux Kernel2.6 <20> <> <EFBFBD> ϰ汾<CFB0> <E6B1BE> ʹ <EFBFBD> <CAB9>
epoll).
84) 2007.8.23
84.1) portable: rebuilt on solaris.
83) 2007.8.22
83.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־<EFBFBD> <D6BE> ¼<EFBFBD> <C2BC> ע<EFBFBD> ắ<EFBFBD> <E1BAAF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ҵ<EFBFBD> <D2B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ־<EFBFBD> <D6BE> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,
stdlib/acl_msg.c, acl_msg.h; <20> <> <EFBFBD> Ӳμ<D3B2> samples/master/spool_server/app_log.c.
82) 2007.8.21
82.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_aio_server.c <20> <> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3>
82.1) performance: master/acl_spool_server.c
82.3) bugfix: engine/events_thr.c, events_proc.c <20> й<EFBFBD> <D0B9> ڶ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD>
81) 2007.8.19
81.1) bugfix: engine/events_proc.c, Ϊ<> <CEAA> master/ <20> <> <EFBFBD> <EFBFBD> Ҫ, <20> <EFBFBD> <DEB8> <EFBFBD> events_proc.c,
<EFBFBD> <EFBFBD> events_thr.c <20> е <EFBFBD> events_disable_readwrite() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ղ<EFBFBD> <D5B2> <EFBFBD> .
81.2) experiment: master/acl_aio_server.c, acl_aio_params.h, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
master/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> .
80) 2007.8.14
80.1) <20> <> <EFBFBD> µ<EFBFBD> <C2B5> <EFBFBD> <EFBFBD> <EFBFBD> engine/ <20> µļܹ<C4BC> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ķ<EFBFBD> λ<EFBFBD> <CEBB> <EFBFBD> <EFBFBD> ѯ<EFBFBD> <D1AF> <EFBFBD> ٻ<EFBFBD> <D9BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 鶨λģʽ , <20> <>
<EFBFBD> <EFBFBD> <EFBFBD> ڽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֲ<EFBFBD> <EFBFBD> MS Windows ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӷ<EFBFBD> <D3B7> <EFBFBD> ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ½<EFBFBD> .
80.2) <20> ĵ<DEB8> <C4B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> : acl_events.c, events_proc.c, events_thr.c, acl_event.h
80.3) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> : events_fdtable.c, events_fdtable.h
80.4) tagged as milestone
79) 2007.8.11
79.1) portable: <20> ɹ<EFBFBD> <C9B9> <EFBFBD> acl <20> <> <EFBFBD> <EFBFBD> ֲ<EFBFBD> <D6B2> Sun Solaris11 for x86.
79.2) bugfix: acl_vstream.c, event_thr.c, <20> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> й<EFBFBD> <D0B9> 첽<EFBFBD> <ECB2BD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD>
78) 2007.8.8
78.1) performance: acl_spool.c, acl_vstream.h/acl_vstream.c: ͨ<> <CDA8> <EFBFBD> <EFBFBD> ACL_VSTREAM
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_spool.c <20> е <EFBFBD> <D0B5> ڲ<EFBFBD> <DAB2> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> (ACL_SPOOL_CTX), <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_spool_xxx <20> <> ÿ<EFBFBD> <C3BF>
<EFBFBD> <EFBFBD> <EFBFBD> ù<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> <EFBFBD> ڴ<EFBFBD> <EFBFBD> Ĵ<EFBFBD> <EFBFBD> <EFBFBD> . (<28> <> acl_aio.c <20> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> )
78.2) framework: samples/master/spool_server/, app_main.c/app_main.h, <20> <> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> ˿<EFBFBD> <EFBFBD> ܽӿڵĵ<EFBFBD> <EFBFBD> <EFBFBD> ģʽ , <20> Ա<EFBFBD> <D4B1> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> ӷ<EFBFBD> <D3B7> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> .
77) 2007.8.7
77.1) bugfix: engine/event_proc.c
76) 2007.7.17
76.1) bugfix: acl_aio.c->acl_aio_connect() <20> <> δԤ<CEB4> <D4A4> <EFBFBD> <EFBFBD> data_buf <20> <> <EFBFBD> ڴ<EFBFBD> <DAB4> ռ <EFBFBD>
76.2) add on sample: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> ڸ߲<DAB8> <DFB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WEB<45> <42> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (samples/http_auto),
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> WEB<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ ֱ<EFBFBD> <EFBFBD> <EFBFBD> ָ߲<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӷ<EFBFBD> <D3B6> ˻<EFBFBD> <CBBB> <EFBFBD> <EFBFBD> ½<EFBFBD> <C2BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӳ<EFBFBD> <D3B2> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
75) 2007.7.12
75.1) performance: һ <> <D2BB> <EFBFBD> ̶<EFBFBD> <CCB6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_aio.c <20> <> <EFBFBD> 첽<EFBFBD> <ECB2BD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
74) 2007.7.11
74.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Linux2.6 <20> <> epoll <20> <> ֧<EFBFBD> <D6A7>
74.2) performance: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽IO<49> <4F> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (acl_aio.c, acl_vstream.c)
74.3) example: <20> <> <EFBFBD> <EFBFBD> HTTP<54> <50> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (webstar)<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѹ<EFBFBD> <D1B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> Դﵽ450Mbits/s,
12500 request/sec. (./ab -n 1000000 -c 5000 -k http://ip:8080/postfix/)
73) 2007.6.7
73.1) feature: acl_spool.c/acl_spool.h, acl_aio.c/acl_aio.h, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <EFBFBD> ̰߳汾, <20> <> <EFBFBD> ֵ<EFBFBD> <D6B5> ̰߳汾<CCB0> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Լ<EFBFBD> Ƕ<EFBFBD> <C7B6> ̰߳汾<CCB0> <E6B1BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> 1.5<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (ԭ<> <D4AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Dz<EFBFBD> <C7B2> <EFBFBD> ϵͳ<CFB5> <CDB3> <EFBFBD> ̵߳<DFB3> <CCB5> Կ<EFBFBD> <D4BF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ), <20> <> <EFBFBD> Գ<EFBFBD> <D4B3> <EFBFBD> <EFBFBD> μ<EFBFBD> :
sample/aio/. <20> <> <EFBFBD> ̰߳汾: 41002 <20> <> /<2F> <> ; <20> <> <EFBFBD> ̰߳汾: 26549 <20> <> /<2F> <> .
72) 2007.5.29
72.1) bugfix: acl_htable.c/acl_htable.h, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̼߳<DFB3> <CCBC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ѿ<EFBFBD> <D1BE> <EFBFBD> <EFBFBD> µĽӿں<D3BF> <DABA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
71) 2007.5.27
70.1) acl_htable.c/acl_htable.h: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˹<EFBFBD> ϣ<EFBFBD> <CFA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ע<EFBFBD> Ṧ<EFBFBD> ܼ<EFBFBD> <DCBC> ̰߳<DFB3> ȫ<EFBFBD> <C8AB> <EFBFBD> <EFBFBD>
70.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˹<EFBFBD> ϣ<EFBFBD> 㷨<EFBFBD> <E3B7A8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_hash.c, acl_hash.h <20> <>
70) 2007.5.21
70.1) acl_dbpool.c, acl_dbpool.h: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <D4B6> ύ<EFBFBD> Ŀ<EFBFBD> <C4BF> <EFBFBD> <EFBFBD> ù<EFBFBD> <C3B9> ܼ<EFBFBD> <DCBC> <EFBFBD> <EFBFBD> <EFBFBD> <E2B9A6>
69) 2007.5.20
69.1) acl_spool.c, acl_workq.c: <20> <> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> صĺ<D8B5> <C4BA> <EFBFBD> <EFBFBD> ӿ<EFBFBD>
68) 2007.5.11
68.1) feature: spool/acl_spool.c, acl_spool.h <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӻ<EFBFBD> <D3BA> <EFBFBD> <EFBFBD> ӿ<EFBFBD>
68.2) engine/acl_event.c acl_event.h, event_thr.c, event_proc.c: <20> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , ͬʱʹ acl_event_request_timer/acl_event_cancel_timer <20> ߱<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ̹߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
67) 2007.5.7
67.1) bugfix: aio/acl_aio.c: acl_aio_read() <20> д<EFBFBD> <D0B4> ݵ<EFBFBD> <DDB5> Ѷ<EFBFBD> <D1B6> <EFBFBD> <EFBFBD> ݳ<EFBFBD> <DDB3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
66) 2007.4.16
66.1) ע<> <D7A2> : aio/acl_aio.h ͷ<> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> ע<EFBFBD> <D7A2>
65) 2007.4.14--4.15
65.1) feature: <20> <> <EFBFBD> <EFBFBD> http/ Э<> <D0AD> <EFBFBD> <EFBFBD> ...
65) 2007.4.11
65.1) bugfix: aio/acl_aio.c, acl_aio_readn() <20> Ļص<C4BB> <D8B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> ©<EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> .
64.2) feature: <20> <> <EFBFBD> <EFBFBD> http/ Э<> <D0AD> <EFBFBD> <EFBFBD> ...
64) 2007.4.10
64.1) feature: <20> <> <EFBFBD> <EFBFBD> http/ Э<> <D0AD> <EFBFBD> <EFBFBD> ...
63) 2007.4.9
63.1) feature: aio/acl_aio.c, stdlib/acl_vstream.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽<EFBFBD> <ECB2BD> N<EFBFBD> <4E> <EFBFBD> ֽڵĺ<DAB5> <C4BA> <EFBFBD> .
63.1) feature: <20> <> ʼ <EFBFBD> <CABC> <EFBFBD> <EFBFBD> proto/http/ Э<> <D0AD> <EFBFBD> <EFBFBD> ...
62) 2007.4.8
62.1) bugfix: engine/events_thr.c, ȥ<> <C8A5> <EFBFBD> <EFBFBD> select() ֮<> <D6AE> <EFBFBD> Գ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> 趨.
62.2) util/aio/: <20> <EFBFBD> <DEB8> ˺<EFBFBD> <CBBA> <EFBFBD> <EFBFBD> ӿڵĶ<DAB5> <C4B6> 巽ʽ , ʹ <> ӿڵ<D3BF> <DAB5> ÷<EFBFBD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
61) 2007.4.7
61.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 첽AIO<49> <4F> <EFBFBD> ڴ<EFBFBD> й©<D0B9> <C2A9> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 첽<EFBFBD> <ECB2BD> <EFBFBD> <EFBFBD> <EFBFBD> 첽IO<49> Ŀ<EFBFBD> (util/aio/).
61.2) <20> ṩ<EFBFBD> 첽IO<49> <4F> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : samples/aio/.
60) 2007.4.6
60.1) <20> <EFBFBD> <DEB6> <EFBFBD> master/acl_master_ent.c <20> е <EFBFBD> һ <EFBFBD> <D2BB> BUG: acl_free_master_ent() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
acl_array_destroy() <20> ĵ<EFBFBD> <C4B5> <EFBFBD> Ӧ<EFBFBD> <D3A6> acl_myfree((char *) serv) ֮ǰ.
59) 2007.4.5
59.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> aio/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 첽IO<49> <4F> <EFBFBD> <EFBFBD> , net/acl_vstream_aync.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
58) 2007.4.1
58.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master/acl_spool_server.c, <20> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܻ<EFBFBD> <DCBB> <EFBFBD> spool/acl_spool.c
58.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> engine/event_thr.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> timer <20> <> event_loop() <20> ĵ<EFBFBD> <C4B5> ù<EFBFBD> ϵ, ʹ <> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD>
ֱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> <CBB6> <EFBFBD> ģʽ <C4A3> <CABD> select() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ֵ<EFBFBD> <D6B5> Ӱ<EFBFBD> <D3B0>
57) 2007.3.25
57.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <DDBF> <EFBFBD> <EFBFBD> ӳص<D3B3> ״̬<D7B4> <CCAC> ¼<EFBFBD> <C2BC> ־: util/spool/mysql/acl_dbpool_mysql.c
57.2) <20> <> <EFBFBD> <EFBFBD> mysql <20> <> <EFBFBD> ص<EFBFBD> ͷ<EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵ<EFBFBD> ֶ<EFBFBD> ̬<EFBFBD> <CCAC> <EFBFBD> <EFBFBD> : depends/
57.3) bugfix: <20> <EFBFBD> <DEB8> ˼<EFBFBD> <CBBC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> صĴ<D8B5> <C4B4> <EFBFBD>
56) 2007.3.24
56.1) feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> <CBB7> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> ÿ<EFBFBD> <C3BF> ܼ<EFBFBD> <DCBC> <EFBFBD> <EFBFBD> ݿ<EFBFBD> <DDBF> <EFBFBD> <EFBFBD> ӳؿ<D3B3> <D8BF> <EFBFBD> spool/.
56.2) example: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master/listener_server <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
56.3) performance: <20> <EFBFBD> <DEB8> <EFBFBD> event_thr.c->event_loop() <20> <> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> ij<EFBFBD> ͻ.
55) 2007.2.15
55.1) master/, net/ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ѿ<EFBFBD> <D1BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> :)
55.2) <20> <> app/master/ <20> 鲢<EFBFBD> <E9B2A2> samples/ <20> <> .
54) 2007.2.14
54.1) feature: stdlib/acl_vstream.c, stdlib/acl_vstream.h, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_fprintf,
acl_vstream_vfprintf <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <F3B7BDB1> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> ߽<EFBFBD> <DFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> ʽ д<CABD> <D0B4> <EFBFBD> <EFBFBD> .
53) 2007.2.13
53.1) <20> <> master/, trigger/, net/ Ŀ¼<C4BF> µ<EFBFBD> һ Щ<D2BB> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> °<EFBFBD> acl/ACL <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 淶<EFBFBD> <E6B7B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ע: <20> ⲿ<EFBFBD> ִ<EFBFBD> <D6B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܱ<EFBFBD> <DCB1> <EFBFBD> ͨ<EFBFBD> <CDA8> , <20> <> δ<EFBFBD> <CEB4> <EFBFBD> ֽ<EFBFBD> <D6BD> в<EFBFBD> <D0B2> <EFBFBD> .
52) 2007.2.3--2.4
52) unit_test: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ش<EFBFBD> <D8B4> <EFBFBD> <EFBFBD> <EFBFBD> , ʹ <> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
52.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> 淶<EFBFBD> <E6B7B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͳһ : <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> aut_, <20> <> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> AUT_
52.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ѭ<EFBFBD> <D1AD> <EFBFBD> <EFBFBD> <EFBFBD> ̵ĵ<CCB5> <C4B5> ÷<EFBFBD> <C3B7> <EFBFBD> , ʹ <> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
51) 2007.1.27
51.1) feature: <20> <> <EFBFBD> Ӳ<EFBFBD> <D3B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> listener_server.c/listener_params.h, <20> <> ģ<EFBFBD> <C4A3> <EFBFBD> <EFBFBD> Ϊ master <20> <> פ<EFBFBD> <D7A4> <EFBFBD> <EFBFBD> <EFBFBD> ̳<EFBFBD> ģ<EFBFBD> <C4A3> <EFBFBD> IJ<EFBFBD> <C4B2> <EFBFBD> ,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> ַ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> , <20> <> ģ<EFBFBD> ͽ<EFBFBD> <CDBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӿڼ<D3BF> <DABC> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̳߳صķ<D8B5> <C4B7> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> ͺ ܺõĽ<C3B5> <C4BD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ѿ<EFBFBD> <D1BE> <EFBFBD> <EFBFBD> <EFBFBD>
֧<EFBFBD> ְ<EFBFBD> פ<EFBFBD> <EFBFBD> ʽ <EFBFBD> Ķ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̶<EFBFBD> <EFBFBD> ̷߳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģ<EFBFBD> <EFBFBD> ; ͬʱ<CDAC> <CAB1> ģ<EFBFBD> ͻ<EFBFBD> <CDBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڽ<EFBFBD> <DABD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> fork һ <> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> ̵<EFBFBD> ģʽ <C4A3> <CABD>
51.2) bugfix: event_proc.c/event_thr.c event_XXX_loop <20> <> <EFBFBD> ¼<EFBFBD> ѭ<EFBFBD> <D1AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> timer <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> .
50)2006.10.20
50.1) app/squid/analog: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> ־<EFBFBD> <D6BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
49)2006.8.29
49.1) util/net/acl_vstream_async.c: <20> <EFBFBD> <DEB6> <EFBFBD> һ <EFBFBD> <D2BB> BUG, <20> Ա<EFBFBD> <D4B1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> ͻ<EFBFBD> <CDBB>
49.2) util/stdlib: acl_mymalloc.c, acl_mymalloc.h, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> ˵<EFBFBD> <CBB5> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷŵĺ<C5B5> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> (ͨ<> <CDA8> <EFBFBD> <EFBFBD> acl_mymalloc.h
<EFBFBD> н<EFBFBD> <EFBFBD> 궨<EFBFBD> <EFBFBD> : #define DEBUG_FREE <20> <> <EFBFBD> ش<D8B4> <F2BFAABC> <EFBFBD> )<29> <>
48) 2006.8.28
48.1) util/stdlib/acl_vstream.c: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_gets_ready()/acl_vstream_gets_nonl_ready(), ʹ <> 첽ͨ<ECB2BD> <CDA8>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ӷ<EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> ʹ ֮<CAB9> <D6AE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ <EFBFBD> <CABD> ʽ <EFBFBD> <CABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܽ<EFBFBD> <DCBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> ACL_VSTREAM <20> <> <EFBFBD> <EFBFBD> ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͬ<EFBFBD> <CDAC> <EFBFBD> <EFBFBD> <EFBFBD> 첽
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
48.2) util/net: acl_vstream_async.c/acl_vstream_async.h, <20> <> Ϊ acl_vstream.c <20> Ӹ<EFBFBD> <D3B8> ײ<EFBFBD> <D7B2> ṩ<EFBFBD> ˽ӿڣ<D3BF> <DAA3> <EFBFBD> <EFBFBD> Ը<EFBFBD> <D4B8> 첽
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> IJ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӽ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˣ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ԭ<EFBFBD> <EFBFBD> <EFBFBD> 첽<EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> ģʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> µ<EFBFBD> <EFBFBD> 첽<EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> ģʽ <EFBFBD> <EFBFBD>
47) 2006.8.25
47.1) util/net: acl_vstream_async.c/acl_vstream_async.h, <20> <EFBFBD> <DEB8> <EFBFBD> һ <EFBFBD> <D2BB> BUG, <20> <> <EFBFBD> ݼ<EFBFBD> acl_vstream_async.h <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
46 ) 2006.8.11
46.1) util/servtmpl: acl_workq.c/acl_workq.h, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> й<EFBFBD> <D0B9> <EFBFBD> <EFBFBD> ӳع<D3B3> <D8B9> ܵĵ<DCB5> <C4B5> <EFBFBD>
45) 2006.7.28
45.1) util/code/, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> BASE64<36> <34> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵ<EFBFBD> ַ<EFBFBD> <D6B7> <EFBFBD>
44) 2006.7.27
44.1) util/engine/acl_event.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˲<EFBFBD> <CBB2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <DAB5> ж<EFBFBD>
44.2) util/master/master_conf.c, <20> <> <EFBFBD> ӷ<EFBFBD> <D3B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD>
43) 2006.7.24
43.1) app/weboe/: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й©<D0B9> <C2A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> Ҿ<EFBFBD> <D2BE> <EFBFBD> <EFBFBD> ˴ <EFBFBD> <CBB4> <EFBFBD> ģ<EFBFBD> <C4A3> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> ѹ<EFBFBD> <D1B9> <EFBFBD> <EFBFBD> <EFBFBD> Լ<EFBFBD> <D4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƻ<EFBFBD> <C6BB> Բ<EFBFBD> <D4B2> <EFBFBD> , ˵<> <CBB5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
ʽ <EFBFBD> <EFBFBD> <EFBFBD> ܿ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȶ<EFBFBD> <EFBFBD> <EFBFBD> .
42) 2006.7.23
42.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ż<EFBFBD> <C5BB> <EFBFBD> BUG<55> <EFBFBD> , event_thr.c->event_thr_loop() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ŀ<EFBFBD> <C4BF> <EFBFBD> , <20> ı <EFBFBD> <C4B1> <EFBFBD> dipatch_fn() <20> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> ӿڲ<D3BF> <DAB2> <EFBFBD> ,
<EFBFBD> Ӷ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<EFBFBD> <EFBFBD> <EFBFBD> ӵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ׳ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷŲ<EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> Ҽ<EFBFBD> <D2BC> <EFBFBD> <EFBFBD> ˼<EFBFBD> <CBBC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
42.2) event_thr.c->event_thr_loop() <20> <> <EFBFBD> ּ<EFBFBD> <D6BC> <EFBFBD> <EFBFBD> <EFBFBD> ijһ <C4B3> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> ij<EFBFBD> ͻ.
41) 2006.7.11
41.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˲<EFBFBD> <CBB2> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܵõ<DCB5> <C3B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
40) 2006.7.5
40.1) Bugfix: acl_vstream_async.c->__handle_line_data() <20> <> <EFBFBD> <EFBFBD> Ȼ<EFBFBD> <C8BB> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> Ѿ<EFBFBD> <D1BE> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
39) 2006.7.3 night
39.1) Feature: ͨ<> <CDA8> <EFBFBD> <EFBFBD> __handle_line_data(), acl_vstream_async_buf_new() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ִ<EFBFBD> <D6B4> Ч<EFBFBD> <D0A7> ,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ƶ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
39.2) Feature: ͨ<> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_vstream_async_buf_new() <20> IJ<EFBFBD> <C4B2> <EFBFBD> <EFBFBD> б <EFBFBD> <D0B1> <EFBFBD> <EFBFBD> <EFBFBD> __handle_line_data() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݵij<EFBFBD> <EFBFBD> ȵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <E2BBBA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
38) 2006.7.2
38.1) Bugfix: <20> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> 첽ͨ<ECB2BD> ſ <EFBFBD> <C5BF> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽<EFBFBD> <ECB2BD> һ <EFBFBD> е ĺ<D0B5> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : util/net/acl_vstream_async.c <20> <>
<EFBFBD> <EFBFBD> __handle_line_data() <20> <> <EFBFBD> <EFBFBD> .
38.2) <20> <> util/stdlib/acl_vstream.c, .h <20> е <EFBFBD> acl_vstream_vstring_readn <20> <> <EFBFBD> <EFBFBD> Ϊ:acl_vstream_vstring_append_readn
37) 2006.6.23
Feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽ͨ<ECB2BD> ŵĽӿ<C4BD> : util/stdlib/acl_vstream.c, util/engine/acl_events.c,
util/net/acl_vstream_async.c. <20> <> ACL_VSTREMA <20> ṹ<EFBFBD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ע<EFBFBD> <D7A2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : close_handle_lnk, <20> Ա<EFBFBD> ֤
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ر<EFBFBD> ǰ<EFBFBD> ȵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ø<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ѿ<EFBFBD> <EFBFBD> ڸ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ע<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ; <20> <> ACL_EVENT <20> ṹ<EFBFBD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> <EFBFBD> Ա
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : lock_mutex, <20> <> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> ¼<EFBFBD> <C2BC> <EFBFBD> ѭ<EFBFBD> <D1AD> <EFBFBD> и<EFBFBD> <D0B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> ڽ<EFBFBD> <DABD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͵<EFBFBD> <CDB5> ¼<EFBFBD> ѭ<EFBFBD> <D1AD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> Ϊ<EFBFBD> <CEAA> <EFBFBD> <EFBFBD>
<EFBFBD> ˸ <EFBFBD> <EFBFBD> <EFBFBD> , <20> Ӷ<EFBFBD> ʹ acl_vstream_async.c <20> в<EFBFBD> <D0B2> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ߳<EFBFBD> <DFB3> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <C4B5> <EFBFBD> , <20> <> <EFBFBD> ǽ<EFBFBD> <C7BD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <C4B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_events.c<> <63> .
36) 2006.6.15
Bugfix: <20> <EFBFBD> <DEB6> <EFBFBD> <EFBFBD> й<EFBFBD> <D0B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̲߳<DFB3> <CCB2> <EFBFBD> ȫ<EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> : util/net/myaddinfo.c
Bugfix: util/net/acl_vstream_net.c <20> е <EFBFBD> acl_vstream_connect() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> acl_vstream_fdopen()
ʱ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
35) 2006.6.13
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̽<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : app/squid/probe
34) 2006.6.8
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳̿ⲿ<EFBFBD> <EFBFBD> .
Feature: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ̶߳<DFB3> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , util/ipc/acl_thread_rwlock.c, acl_thread_rwlock.h
Feature: <20> <> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <C7B0> <EFBFBD> ڴ<EFBFBD> DB<44> <42> <EFBFBD> øÿ<C3B8> <C3BF> <EFBFBD>
33) 2006.6.7
Bugfix: <20> <EFBFBD> <DEB6> <EFBFBD> <EFBFBD> <EFBFBD> Щ<EFBFBD> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> ڵ<EFBFBD> <DAB5> <EFBFBD> acl_vstream_fdopen() ʱ<> ĸ<EFBFBD> <C4B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <CBB3> <EFBFBD> <EFBFBD> BUG!!!, <20> <> <EFBFBD> ˺ô<C3B4> <F3BEA2B2> ҳ<EFBFBD> <D2B3> ˴ <EFBFBD> <CBB4> <EFBFBD> :(
Test: <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ̳߳ؿ<CCB3> <D8BF> <EFBFBD> ʵ<EFBFBD> <CAB5> (app/thread_server/server2, server3)
32) 2006.6.6
д<EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߳̿<EFBFBD> <EFBFBD> <EFBFBD> ʵ<EFBFBD> <EFBFBD> (app/thread_server/server1)
31) 2006.6.4
Ϊ<EFBFBD> ˱<EFBFBD> <EFBFBD> ⺯<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֿռ <EFBFBD> <EFBFBD> <EFBFBD> ͻ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˴ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĺ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> к<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ACL_ ǰ<C7B0> <D7BA> ͬʱ<CDAC> <CAB1>
Դ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǰ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> acl_ ǰ<C7B0> <D7BA> <EFBFBD> <EFBFBD> <EFBFBD> ˣ<EFBFBD> <CBA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ĺ<EFBFBD> <C4B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ acl_project <20> <> <EFBFBD> <EFBFBD> . ---zsx
ע<EFBFBD> <EFBFBD> acl <20> <> advanced c library <20> <> Ӣ<EFBFBD> ļ<EFBFBD> д.
<20> <> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> ߾<EFBFBD> <DFBE> <EFBFBD> ʹ <EFBFBD> <CAB9> ACL_ <20> <> ͷ<EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͣ<EFBFBD> <CDA3> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ĺ<EFBFBD> <C4BA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ͳ<EFBFBD> <CDB2> <EFBFBD> <EFBFBD> <EFBFBD> ֤<EFBFBD> <D6A4> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> ԡ<EFBFBD>
30) 2006.5.30
Feature(debug status): 1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> ̳߳صĿ<D8B5> : servertmpl/workq.c, workq.h, worker.c, worker.h
Name: ȷ<> <C8B7> <EFBFBD> Ժ<D4BA> <F3BDABB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ : ACL(<28> <EFBFBD> <DFBC> <EFBFBD> C <20> <> )
29) 2006.4.30
Portable: <20> <> ѯ<EFBFBD> <D1AF> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> Makefile<6C> <65> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> е ı <D0B5> <C4B1> <EFBFBD> ѡ <EFBFBD> <D1A1> -gdwarf <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> -g<> <67> <EFBFBD> Լ<EFBFBD> <D4BC> <EFBFBD> <EFBFBD> µ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˰<EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> :(
28) 2005.12.14
Feature: 1) <20> ṩ<EFBFBD> <E1B9A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> vstream_fseek <20> <> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> º<EFBFBD> <C2BA> <EFBFBD> <EFBFBD> <EFBFBD> Ч<EFBFBD> ʸ<EFBFBD> <CAB8> <EFBFBD> , <20> Ұѵ <D2B0> һ <EFBFBD> 汾<EFBFBD> <E6B1BE> vstream_fseek
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ vstream_fseek2. <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ǿ<EFBFBD> ˲<EFBFBD> <CBB2> Դ<EFBFBD> <D4B4> <EFBFBD> .
27) 2005.12.13
Feature: 1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> vstream_fseek <20> <> <EFBFBD> <EFBFBD>
26) 2005.10.24
Feature: 1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> util/stdlib/filedir/make_dirs.c <20> ļ<EFBFBD> , <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> Դ<EFBFBD> <D4B4> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> ༶Ŀ¼
25) 2005.10.8
Bugfix: 1) <20> <> app/master/multi_proxy/multi_proxy.c <20> <> , <20> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱû<CAB1> н<EFBFBD> <D0BD> ļ<EFBFBD> ָ<EFBFBD> <D6B8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ļ<EFBFBD>
<EFBFBD> Ľ<EFBFBD> β, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> O_APPEND, ʹ ÿ<CAB9> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> ʹ <EFBFBD> ļ<EFBFBD> ָ<EFBFBD> <D6B8> ָ<EFBFBD> <D6B8> <EFBFBD> ļ<EFBFBD> <C4BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
Feature: 1) <20> <> app/master/master.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д master <20> <> <EFBFBD> ̵<EFBFBD> pid <20> Ĺ<EFBFBD> <C4B9> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> stop.sh
֮<EFBFBD> <EFBFBD> <EFBFBD> Ľű<EFBFBD> <EFBFBD> <EFBFBD> ֹͣ<EFBFBD> <EFBFBD> <EFBFBD> ؽ<EFBFBD> <EFBFBD> <EFBFBD> .
24) 2005.9.27
Feature: 1) <20> <> <EFBFBD> <EFBFBD> multi_server.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˼<EFBFBD> ¼<EFBFBD> <C2BC> Ϣ<EFBFBD> Ĺ<EFBFBD> <C4B9> <EFBFBD>
23) 2005.9.26
Bugfix: 1) <20> <EFBFBD> <DEB8> <EFBFBD> __proc(thread)__event_loop() <20> е <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> nowait != 0 ʱ, Ӧ<> <D3A6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ָ<EFBFBD> <D6B8> tvp
<EFBFBD> <EFBFBD> ֵ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> ָ<EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ᵼ<EFBFBD> º<EFBFBD> <C2BA> <EFBFBD> <EFBFBD> <EFBFBD> select() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> ȴ<EFBFBD> ; 2) multi_server.c <20> <> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,
<EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> switch() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȱ<EFBFBD> <C8B1> һ <EFBFBD> <D2BB> break.
Feature: 1) <20> <EFBFBD> <DEB8> <EFBFBD> multi_proxy.c <20> ļ<EFBFBD> , ʹ <> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> ø<EFBFBD> <C3B8> <EFBFBD> ͨ<EFBFBD> <CDA8> :)
22) 2005.9.25
Feature: 1) <20> <> <EFBFBD> <EFBFBD> multi_server.c, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ˶<EFBFBD> <CBB6> <EFBFBD> ʱ<EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> <DAB4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ <C4A3> Ķ<EFBFBD> <C4B6> <EFBFBD> ʱ<EFBFBD> dz<EFBFBD> <C7B3> <EFBFBD> <EFBFBD> м<EFBFBD> ֵ.
21) 2005.9.22
Bugfix: 1) ͨ<> <CDA8> <EFBFBD> ߽<EFBFBD> <DFBD> <EFBFBD> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> û<EFBFBD> <C3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ֱ<EFBFBD> Ϊ2, 4, 4096, 8192)ʱ, <20> <> <EFBFBD> ִ<EFBFBD> <D6B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (multi_proxy)<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ϸ<EFBFBD> <CFB8> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ¼<EFBFBD> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (event.c)<29> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ⲿ<EFBFBD> <E2B2BF> <EFBFBD> <EFBFBD> ͨ<EFBFBD> <CDA8> <EFBFBD> <EFBFBD> <EFBFBD> ú<EFBFBD> <C3BA> <EFBFBD>
event_disable_readwrite()<29> <> <EFBFBD> ر<EFBFBD> <D8B1> <EFBFBD> <EFBFBD> ÿɶ<C3BF> д<EFBFBD> <D0B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ, <20> <> Ϊ ..._event_loop() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> <C3B5> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Ͳ<EFBFBD> <CDB2> <EFBFBD> <EFBFBD> ˲<EFBFBD> ͬ<EFBFBD> <CDAC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> ɵ<EFBFBD> <C9B5> <EFBFBD> select() ʱ<> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> صĴ<D8B5> <C4B4> <EFBFBD> : <20> зǷ<D0B7> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> EVENT <20> Ľṹ<C4BD> <E1B9B9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ..._event_loop() <20> е ľֲ<C4BE> <D6B2> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ,
<EFBFBD> <EFBFBD> <EFBFBD> ĵ<EFBFBD> <EFBFBD> ļ<EFBFBD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <EFBFBD> : event.c, event.h
20) 2005.9.19
Portable: 20.1) can run on HP-UX
19) 2005.9.11
Workaround: 19.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> multi_server.c <20> <> <EFBFBD> ܵĴ<DCB5> <C4B4> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> , 19.2) <20> <EFBFBD> <DEB2> <EFBFBD> multi_server.c <20> е ļ<D0B5>
<EFBFBD> <EFBFBD> bug
18) 2005.9.10
Workaround: 18.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʽ , <20> <> ȥ<EFBFBD> <C8A5> <EFBFBD> <EFBFBD> һ һ Щ<D2BB> <D0A9> <EFBFBD> õı <C3B5> <C4B1> <EFBFBD>
17) 2005.9.9
Bugfix: 17.1) <20> <EFBFBD> <DEB8> <EFBFBD> events.c <20> е <EFBFBD> һ <EFBFBD> <D2BB> bug
Feature: 17.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> Գ<EFBFBD> <D4B3> <EFBFBD> : single_proxy/
16) 2005.9.6
Workaround: 16.1) <20> <> ֲ<EFBFBD> <D6B2> <EFBFBD> <EFBFBD> SUN ƽ ̨<C6BD> <CCA8> , <20> <> <EFBFBD> <EFBFBD> <DEB8> ˼<EFBFBD> <CBBC> <EFBFBD>
15) 2005.9.5
Feature: 15.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> VSTREAM_STDIN, VSTREAM_STDOUT, VSTREAM_STDERR <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <D7BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
14) 2005.9.4
Workaround: 14.1) ʹ multi_server() <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ܿ<EFBFBD> <DCBF> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD>
Bugfix: 14.1) <20> <EFBFBD> <DEB8> <EFBFBD> servtmpl/event.c <20> е <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> bug: <20> <> <EFBFBD> п<EFBFBD> <D0BF> õ<EFBFBD> <C3B5> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ, <20> <> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA>
select() <20> <> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> ʱ<EFBFBD> <CAB1> <EFBFBD> ȴ<EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ 0.
13) 2005.8.28
Workaround: 13.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ Щ<D2BB> <D0A9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> д<EFBFBD> <D0B4> ʽ , ͬʱ<CDAC> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> throttle_delay <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> : <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ӽ<EFBFBD> <D3BD> ̷<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ˳<EFBFBD> <EFBFBD> <EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ̽<EFBFBD> ֹͣ<CDA3> <D6B9> Ӧ<EFBFBD> ķ<EFBFBD> <C4B7> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ throttle_delay.
12) 2005.8.27
Workaround: 12.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȳɹ<C8B3> <C9B9> <EFBFBD> <EFBFBD> <EFBFBD> single_server <20> ķ<EFBFBD> <C4B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ :)
11) 2005.8.24
Workaround: 11.1) <20> <EFBFBD> <DEB8> <EFBFBD> events.c/.h, ʹ ֧֮<D6AE> ֽ<EFBFBD> <D6BD> ̳ص<CCB3> ģʽ , <20> ڽ<EFBFBD> <DABD> ̳<EFBFBD> ģʽ <C4A3> ²<EFBFBD> <C2B2> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> æ״̬; <20> <> <EFBFBD> ̳߳<DFB3> ģʽ <C4A3> <CABD> <EFBFBD> <EFBFBD> Ҫ<EFBFBD> <D2AA> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ƿ<EFBFBD> <C7B7> <EFBFBD> <EFBFBD> <EFBFBD> æ״̬; 11.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> util/master/ <20> µ<EFBFBD> <C2B5> ļ<EFBFBD> ,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʵ<EFBFBD> <EFBFBD> <EFBFBD> ˰<EFBFBD> פ<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .
10) 2005.8.21
Bugfix: 10.1) <20> <EFBFBD> <DEB8> <EFBFBD> xinetd_cfg.c <20> е <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
Feature: 10.1) <20> <> <EFBFBD> <EFBFBD> xinetd_cfg.c/.h <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> xinetd_cfg_index(...) <20> <> <EFBFBD> <EFBFBD>
Workaround: 10.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master/ <20> ⺯<EFBFBD> <E2BAAF>
9) 2005.8.15
Workaround: 9.1) <20> <> <EFBFBD> <EFBFBD> ʹ master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> :) util/master/: master_vars.c, master_params.c,
master_params.h, master_conf.c, master_service.c, master.h, master_ent.c, master_avail.c,
master_sig.c, master_spawn.c, master_status.c, master_wakeup.c
8) 2005.8.14
Workaround: 8.1) <20> <> master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> ɹ<EFBFBD> :), app/master/: master.c
7) 2005.8.9
Bugfic: 7.1) <20> <EFBFBD> <DEB2> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> <EFBFBD> ܻ<EFBFBD> <DCBB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ڴ<EFBFBD> й©<D0B9> Ĵ<EFBFBD> <C4B4> <EFBFBD> , master_ent.c
Workaround: 7.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master/ Ŀ¼<C4BF> µ<EFBFBD> <C2B5> ļ<EFBFBD> , <20> <> ʣ<EFBFBD> <CAA3> mail_flow.c <20> ȼ<EFBFBD> <C8BC> <EFBFBD> <EFBFBD> ļ<EFBFBD> δ<EFBFBD> <CEB4> <EFBFBD> <EFBFBD> .
6) 2005.8.8
Workaround: 6.1) <20> <EFBFBD> <DEB8> <EFBFBD> Ŀ¼<C4BF> ṹ, <20> <> stdlib/ Ŀ¼<C4BF> ½<EFBFBD> <C2BD> <EFBFBD> <EFBFBD> <EFBFBD> proc_specific/ Ŀ¼, <20> <> Ŀ¼<C4BF> <C2BC> <EFBFBD> <EFBFBD> <F3BDABB4> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> ڽ<EFBFBD> <EFBFBD> ̱<EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> <EFBFBD> <EFBFBD> õĿ⺯<EFBFBD> <EFBFBD> , <20> <> Щ<EFBFBD> ⺯<EFBFBD> <E2BAAF> <EFBFBD> <EFBFBD> <EFBFBD> ̲߳<DFB3> <CCB2> <EFBFBD> ȫ<EFBFBD> <C8AB> ; 6.2) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> watchdog <20> <> <EFBFBD> ij<EFBFBD> <C4B3> <EFBFBD> <EFBFBD> ƶ<EFBFBD> <C6B6> <EFBFBD> ר<EFBFBD> ŵ<EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> Գ<EFBFBD> <EFBFBD> <EFBFBD> Ŀ¼<EFBFBD> <EFBFBD> (test_util/watchdog/), <20> <> <EFBFBD> <EFBFBD> test_util/inet/; 6.3) <20> <EFBFBD> <DEB8> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ͷ<EFBFBD> ļ<EFBFBD> (cgi-rep.h <20> <>
cgi-util.h), <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> C++ <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> õ<EFBFBD> ֧<EFBFBD> <D6A7> .; 6.4) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> master <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> (master/)
5) 2005.7.29
Feature: 5.1) <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> 첽<EFBFBD> <ECB2BD> <EFBFBD> ӡ<EFBFBD> <D3A1> 첽<EFBFBD> <ECB2BD> <EFBFBD> е Ķ<D0B5> <C4B6> <EFBFBD> ʱ<EFBFBD> <CAB1> <EFBFBD> <EFBFBD> (<28> <> <EFBFBD> <EFBFBD> <EFBFBD> <CEA2> <EFBFBD> <EFBFBD> <EFBFBD> 첽SOCKET<45> <54> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ߱<EFBFBD> <DFB1> <EFBFBD> ).
event.h, event.c, vstream_async.c, vstream_async.h, readline_async/, tcp_proxy/.
4) 2005.7.25
Feature: 4.1) <20> <> vstream.c <20> <> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> vstream_vstring_readn(), <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> vstring <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ; 4.2) <20> <> vstream_async.c <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> vstream_async_gets(), <20> Ӷ<EFBFBD> <D3B6> <EFBFBD> <EFBFBD> Խ<EFBFBD> <D4BD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <D2BB> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> ¼<EFBFBD> ֪ͨ<CDA8> <D6AA> <EFBFBD> <EFBFBD> ,
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Ż<EFBFBD> ֪ͨӦ<EFBFBD> ó<EFBFBD> <EFBFBD> <EFBFBD> , <20> <> ʵ<EFBFBD> <CAB5> <EFBFBD> ˶<EFBFBD> ȡ<EFBFBD> з<EFBFBD> <D0B7> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ .
Test: 4.1) <20> <> app/ Ŀ¼<C4BF> <C2BC> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˹<EFBFBD> <CBB9> <EFBFBD> : readline_async/, <20> <> <EFBFBD> ڲ<EFBFBD> <DAB2> <EFBFBD> <EFBFBD> 첽<EFBFBD> <ECB2BD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ݵĿ⺯<C4BF> <E2BAAF> .
3) 2005.7.18
Workaround: 3.1) <20> <EFBFBD> <DEB8> <EFBFBD> vstream_net.c/h <20> ļ<EFBFBD> , <20> <> vstream_listen2 <20> <EFBFBD> Ϊ vstream_listen_ex, <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD>
<EFBFBD> <EFBFBD> һ <EFBFBD> <EFBFBD> block_mode <20> IJ<EFBFBD> <C4B2> <EFBFBD> , <20> Ӷ<EFBFBD> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȫ<EFBFBD> <C8AB> <EFBFBD> ط<EFBFBD> <D8B7> <EFBFBD> <EFBFBD> <EFBFBD> ģʽ ; 3.2) vstream_async.c, <20> <> vstream_listen_ex
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> NON_BLOCKING <20> <> <EFBFBD> <EFBFBD> .
2) 2005.7.10
Workaround: 2.1) <20> <> <EFBFBD> ¸ <EFBFBD> д<EFBFBD> ˸ <EFBFBD> <CBB8> <EFBFBD> Makefile <20> ļ<EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> Զ<EFBFBD> <D4B6> ӻ<EFBFBD> <D3BB> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ȡ<EFBFBD> <C8A1> <EFBFBD> <EFBFBD> gcc <20> <> <EFBFBD> 뻹<EFBFBD> <EBBBB9> <EFBFBD> <EFBFBD> g++ <20> <> <EFBFBD> <EFBFBD> ;
2.2) <20> ĸ<DEB8> <C4B8> <EFBFBD> .c <20> <> .h <20> ļ<EFBFBD> , <20> <> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> g++ <20> <> <EFBFBD> <EFBFBD> ʱ<EFBFBD> Ĵ<EFBFBD> <C4B4> <EFBFBD> <EFBFBD> 뾯<EFBFBD> <EBBEAF> , <20> <> ʹ <EFBFBD> <CAB9> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ÷<EFBFBD> <C3B7> <EFBFBD> <EFBFBD> <EFBFBD> Ӧ<EFBFBD> <D3A6> <EFBFBD> <EFBFBD> һ
Щ C++ <20> ij<EFBFBD> <C4B3> <EFBFBD> <EFBFBD> <EFBFBD> .
1) 2005.7.9
Bugfix: <20> <EFBFBD> <DEB6> <EFBFBD> servtmpl/events.c <20> е <EFBFBD> <D0B5> <EFBFBD> <EFBFBD> <EFBFBD> BUG, 1.1) event_enable_write() <20> <> event_enable_read()
<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ˷<EFBFBD> ֹ<EFBFBD> <EFBFBD> һ <EFBFBD> β<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> δ<EFBFBD> <EFBFBD> ״̬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> Ϊ<EFBFBD> <EFBFBD> <EFBFBD> е <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ; 1.2) event_loop() <20> <> ǰ<EFBFBD> <C7B0> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> ʱû
<EFBFBD> н<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> æ״̬<EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> <EFBFBD> .