bash中信号之间的最短时间

时间:2015-07-16 16:40:35

标签: linux bash signals hostapd bash-trap

我正在尝试制作一个使用hostapd启动/停止接入点的bash脚本。

我们有一个角落案例,我们希望尽快切换到另一个wifi频道,而且由于hostapd不支持动态频道交换,我们必须:

  • 杀死进程
  • 更改配置文件
  • 再次启动hostapd。

我决定从主应用程序向此脚本(USR1和USR2)发送信号来执行此操作,但我没有得到预期的结果。我总是首先收到第二个信号,所以它不起作用。我试图在代码中添加一个sleep(1)来使其工作,但这不是一个优雅的解决方案。

以下是我正在使用的c ++行,

var ggApp = angular.module('ggApp', []);

ggApp.controller('loginCtrl',function($scope,$http){
$scope.loginApp = function(user){
console.log(user);
$http.post('/getgrocers/cred_files/login.php', user).success(function(data){
console.log(data);
}).error(function(data){
console.log(data);
});
}
})

这是剧本。

<div class="sign-in" ng-controller="loginCtrl">
<form method="post">
<input type="email" placeholder="Email Address" ng-model="user.email"/>
<input type="password" placeholder="Password" ng-model="user.pass"/>
<input type="submit" value="Log In" ng-click="loginApp(user)">
</form>
</div>

欢迎任何想法。

非常感谢!!

1 个答案:

答案 0 :(得分:0)

虽然保证按照发送的顺序传送实时信号,但未指定标准信号的传送顺序。尝试切换到实时信号。

此外,您可能想要尝试不同的方法。作为man page specifies,您可以简单地要求它重新加载其配置文件,而不是杀死然后重新启动 hostapd

  

可以使用hostapd_cli reconfigure SIGHUP 发送到hostapd处理器或使用hostapd_cli(8)实用程序重新加载配置文件的更改。

请注意,已建立的连接在配置重新加载时会丢失。