|
Posted by kjohnson on 01/20/05 01:28
> Xuefer Tinys wrote:
> > i have a big array with 20k elements, i have no problem building it,
> > because the elements is recv from socket, i can socket_select() on 1k
> > clients, read from them.
> > i plan to unset the whole array every 1hour
> > this is a not big problem when for a few times, it takes me 0.02
seconds
> > but after many hours of running, unset will sometime takes 10 seconds.
> > this is big problem because it's 1 unset() statement, and all incoming
> > connection is blocked, the client may get connection time out
> >
> > summary:
> > 1. one process, no fork (just has to be)
> > 2. socket_select(), process each client's data simultaneously. some
> > data will be put into array
> > 3. each element value is /true/, and key is numeric(ip2long)
> > $array[ip2long($ip)] = true;
> > 4. fast to unset, but slow to unset after a few hours, with similar
> > amount of elements
A question from another naive reader.
Have you tried re-setting the array to an empty one, using array(),
instead of using unset()?
Kirk
[Back to original message]
|