好的,我已经阅读了这篇文章以寻找正确答案,但它似乎没有达到我的目的.
现在,遇到麻烦:
我在C中有一个传统的客户端 - 服务器架构(所有套接字都是非阻塞的),服务器正在侦听传入连接,客户端尝试连接.第一次连接成功,一切都很顺利,直到我在服务器上按Ctrl + C.
代码的客户端检测到连接丢失并设置重试计时器.客户端代码应该通过在每个定时器弹出时使用POSIX间隔定时器来反复尝试重新连接服务器.但是,它不会关闭插座或重新开始.现在,每次重试连接时,connect()都会返回
传输端点已连接
即使重新启动使用SO_REUSEADDR并成功启动的服务器,连接也无法完成.我需要实现的一件事是服务器上用于在Ctrl + C上关闭的信号处理程序.
但是,我是否需要在客户端关闭套接字描述符并在每次断开连接时重新开始,或者有没有办法解决这个问题?
看看这个小提琴这里的CSS和HTML视图。
代码是:
<body>
<div class="header-bar" id="header-bar">
<div class="title-bar" id="title-bar">
<table id="header-table" class="header-table" width="100%">
<tr>
<td>
<div class="site-title" id="site-title">Site Title</div>
</td>
</tr>
<tr>
<td>
<div class="site-tagline" id="site-tagline">Site Tagline</div>
</td>
</tr>
</table>
</div>
<div class="header-login-bar" id="header-login-bar">
<div class="header-login-form" id="header-login-form">
<table>
<tr>
<th>Name</th>
<td><input type="text" name="user-email"/></td>
</tr>
<tr>
<th>Password</th>
<td><input type="password" name="user-pass"/></td>
</tr>
</table>
</div>
<div class="header-logged-in" id="header-logged-in">
Welcome {$user}.
<a href="#">Dashboard</a>
<a href="#">Logout</a>
</div>
</div>
</div>
<div id="content-bar" class="content-bar">
This is the content part
</div>
</body>
Run Code Online (Sandbox Code Playgroud)
具有id标头栏的div必须包含此段中绘制的所有元素,但我不明白为什么,此段拒绝运行。我是设计新手,使用更多的Dreamweaver等图形工具以及代码和设计视图来制作这些东西,即使那里的内容放错了地方。并且在浏览器中,带有id标头栏的div根本不显示任何文本。带有ID标头栏的div在Chrome的Inspect元素中报告高度为0px。