Ruby - while语句中的否定条件

Pau*_*aul 2 ruby while-loop conditional-statements

RubyMine在此警告我负面情况:

while !open_socket do
    sleep 1
end
Run Code Online (Sandbox Code Playgroud)

我知道这unless是相反的if,但与之相反的是while什么?

xda*_*azz 8

until:

until open_socket do
    sleep 1
end
Run Code Online (Sandbox Code Playgroud)

如果其中只有一行,您还可以写为:

sleep 1 until open_socket
Run Code Online (Sandbox Code Playgroud)