【发布时间】:2017-07-03 21:46:53
【问题描述】:
我尝试使用 node.js 创建一个 lambda 函数。 w 用 C 代码编写代码并使用 node-gyp 将其转换为节点库。 lambda 函数完美运行。但它只打印 node.js console.log 语句。
这是我的 node.js 代码
'use strict';
console.log('Loading function');
exports.handler = (event, context, callback) => {
var addon = require('./build/Release/testLibraryfromCcode');
addon.sayHello();
console.log("Completed");
}
这是我的 C 代码
int sayHello()
{
printf("Haaaaaaaaaaaaai\n");
fflush(stdout);
return 0;
}
我从 lambda 测试控制台得到这样的输出
TART RequestId: 3e8cd5ff-2d41-11e6-af8f-ada8f1249113 Version: $LATEST
2016-06-08T06:21:32.779Z 3e8cd5ff-2d41-11e6-af8f-ada8f1249113 Loading function
2016-06-08T06:21:32.779Z 3e8cd5ff-2d41-11e6-af8f-ada8f1249113 Completed
Haaaaai 打印丢失。 我需要在我的 C 代码中打印 printf 语句。如果有任何想法?
【问题讨论】:
-
您在 printf 之后尝试过
fflush(stdout)吗? -
试过了。但仍然无法正常工作。问题已更新
-
你能发布你的导出
sayHello函数的C代码吗?
标签: c node.js amazon-web-services lambda node-gyp