我到处寻找,只能找到如何编写异步函数,我已经理解了。
我想做的是在触发事件 [EventEmitter] 中运行异步方法,但我发现这样一个简单的事情似乎根本不可能。
考虑以下...
// Your basic async method..
function doSomething(callback) {
var obj = { title: 'hello' };
// Fire an event for event handlers to alter the object.
// EvenEmitters are called synchronously
eventobj.emit('alter_object', obj);
callback(null, obj);
}
// when this event is fired, I want to manipulate the data
eventobj.on('alter_object', function(obj) {
obj.title += " world!";
// Calling this async function here means that our
// event handler will return before our data is retrieved.
somemodule.asyncFunction(callback(err, …Run Code Online (Sandbox Code Playgroud) 这是一个古怪的.
我有以下代码......
foreach (IScanTicket ticket in this) {
if (ticket.Status == TicketStatus.Created || ticket.Status == (TicketStatus.Transfered | TicketStatus.Created))
return ticket;
}
}
Run Code Online (Sandbox Code Playgroud)
当我运行这个状态时Created|Transferred,if语句似乎失败了(没有按照它的意思去做).
有趣的是,如果我调试并逐步执行代码并观察语句,它总是TRUE在我的调试器中返回,但是当我单步执行代码时它无法进入块.
为什么调试器会显示该语句true,但仍然继续这样做?这就像调试器告诉我的一样.
有没有人经历过这个?
PS我正在使用Xamarin studio 5.9.7
尝试在脚本中使用 apt-get,所以我正在使用该apt-get -qq -y选项,因为我想让我的安装脚本显示类似...
Installing SUDO....DONE
Run Code Online (Sandbox Code Playgroud)
但是由于某种原因 apt-get 仍然产生大量输出,使用这个选项,这意味着我最终会得到......
Installing SUDO....
Selecting previously unselected package sudo.
(Reading database ... 48056 files and directories currently installed.)
Preparing to unpack .../sudo_1.8.10p3-1+deb8u5_amd64.deb ...
Unpacking sudo (1.8.10p3-1+deb8u5) ...
Processing triggers for man-db (2.7.0.2-5) ...
Processing triggers for systemd (215-17+deb8u5) ...
Setting up sudo (1.8.10p3-1+deb8u5) ...
DONE
Run Code Online (Sandbox Code Playgroud)
所以我的安装脚本对于基本包安装来说看起来很混乱,更不用说所有其他包了。
我错过了什么吗?
我知道有 的过程SELECT array_agg(f) FROM (SELECT blah FROM stuff) f,这在 SQL 中很棒,但是在 PL/pgSQL 中编写函数时,有没有简写方法?
我正在尝试将 JSON 键放入一个数组中,我可以用它来查看长度。就像是...
v_len := array_length( array_agg(json_object_keys(myjson)), 1);
而不是长, DECLARE a 变量,做 a SELECT array_agg(f) INTO ...,这是我一直在做的。我似乎已经使用相同的 SQL 字符串实现了数百种实现,但我真的很想减少我的代码,我的手指因所有多余的输入而变得麻木。
这种速记方法缺少什么?
.net ×1
apt-get ×1
array-agg ×1
asynchronous ×1
bash ×1
c# ×1
debugging ×1
eventemitter ×1
if-statement ×1
javascript ×1
node.js ×1
plpgsql ×1
postgresql ×1