مشکل در رفرش tk

سلام دوستان
داخله tk یه while انداختم که چک کنه که کاریر به اینترنت وصل هست یا نه ولی همون طور که می دونید خوده tk هم تو while و حلقه کانکشن هی تکرار می شه و نرم افزار احرا نمی شه !

connection = TkLabel.new(root) 
	connection.text = if internet_connection?
 'connect to net'
	else
'not coneected'
	end
	connection.place(
		'height' => 100, 
		'width' => 100, 
		'x' => 180, 'y' => 70)

	unless internet_connection?
refresh = TkButton.new(root) do
	text 'refresh'
	font TkFont.new('chalkboard 20 bold')
	borderwidth 0
	underline 0
	state "normal"
	command (proc {connection.text = if internet_connection?
 'connect to net'
	else
'not coneected'
	end})
	place(
		'width'  => 220,
		'x'      => 280,
		'y'      => 170)
end
end

این کد می خوام بندازم نو وایل تا دیگه از باتن استفاده نکنم !