webForumDet fria alternativet

Trådar i ruby

Webbutveckling

0 svar · 317 visningar · startad av neox83

Medlem sedan okt. 2000149 inlägg
Frågan#1

Hej
Detta har inte just med rails att göra mem i brist på bätre forum.
Satt och lekte med trådar o socket i ruby men stötte på problem med denna kodsnutt som verkar hänga sig.
Meningen är att en tråd uppdaterar en variabel när en anslutning kommit, medan den andra tråden skriver ut just detta.
Några tankar?

require 'socket'
require 'thread'

def acceptIncoming(serversocket)
    printf("Going into the accept function\n")
    while true  
        tcpSocket = serversocket.accept
        @numOfClients = @numOfClients + 1
        tcpSocket.close
    end

end

def lol
oldNum = -1
while true 
    sleep(0.05)
    if oldNum != @numOfClients
        printf("numOfClients %i\n", @numOfClients)
        oldNum = @numOfClients
    end
end
end

@numOfClients = 0
gs = TCPserver::new("", 9999)
sleep(1)
Thread.new(lol())
Thread.new(acceptIncoming(gs))
258 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)