您好我有一个简单的python脚本应该定期执行某些操作。这是代码:
<form role="form">
<script cam-script type="text/form-script">
$scope.selectedRow = null;
var persons = $scope.persons = [
{
"id": 1,
"name": "name1",
"age":"454",
"description":"this is simple name"
} ,
{
"id": 2,
"name": "name2",
"age":"4543",
"description":"this is simple name"
},
{
"id": 3,
"name": "name2",
"age":"4543",
"description":"this is simple name"
}
];
camForm.on('form-loaded', function() {
camForm.variableManager.createVariable({
name: 'persons',
type: 'Array',
value: persons
});
});
$scope.pageNumber = 0;
$scope.IsHidden=true;;
$scope.setPageNumber = function(index) {
$scope.pageNumber = index;
$scope.IsHidden = $scope.IsHidden ? false : true;
}
</script>
<div class="container">
<table class="table table-condensed" style="border-collapse:collapse;">
<thead>
<tr>
<th>id</th>
<th>name</th>
<th>age</th>
<th> </th>
</tr>
</thead>
<tbody ng-repeat="item in persons " >
<tr >
<td>{{item.id}}</td>
<td>{{item.name}}</td>
<td>{{item.age}}</td>
<td><button class="btn btn-default btn-xs" ><span class="glyphicon glyphicon-eye-open" ng-class="{$index == pageNumber }" ng-click="setPageNumber($index)($index)"></span></button></td>
</tr>
<tr ng-hide="IsHidden">
<td>
<label for="id" class="control-label">details</label>
<div class="controls">
<input id="description" class="form-control" type="text" ng-model="item.description" required readonly/>
</td>
</tr>
</tbody>
</table>
</div>
</form>
如果我让这个代码运行,它在前2-3个小时内完全正常,因为它会打印&#34;睡觉前#34;然后59秒后它将打印&#34;睡眠后#34;等等。然而,在最初的几个小时后,似乎卡在time.sleep(59)线上。我之所以知道它冻结的原因是因为它会打印出来#34;睡觉之前&#34;在终端然后它将永远不会再打印任何东西。我看到一篇帖子说它可能是PowerShell中QuickEdit模式的一个问题,所以我尝试禁用它,它仍然有同样的问题。有什么建议吗?
由于
答案 0 :(得分:0)
在这种情况下使用while True
是一个坏习惯。您应该使用 cron 任务计划程序。
回到你的代码 - 如果它能在几个小时内正常工作,那就意味着#Lots more code
部分存在一个错误。 time.sleep()
本身没问题。