一个菜鸟的淘宝路问题,功能区回调是什么意思

错误(可在服务器上查看具体错误信息)回调函数,菜鸟不要来
Description of your first forum.
11 篇帖子 & 分页:1 / 1
由 Milpas & 星期三, 日 18:04
来了也没关系,我也是,嘻嘻[:D]
言归正传:如果在一个线程里执行一个回调函数,
回调函数是在线程空间执行还是在主线程空间执行?
执行回调函数是立即返回还是一直等到函数结束才返回?
由 driver & 星期三, 日 18:09
应当是在主线程中执行的,只有等函数调用结束后才会返回调用线程,不过在执行期间不会影响主线程的执行。
以上纯属个人理解,未有出处。
由 xeen & 星期三, 日 18:13
没太看懂什么意思,所谓回调用函数是指:
在A函数调用B函数,并且把C函数的地址当成参数传给了B函数,B在执行中
会调用C函数.
这跟线程有什么关系.
由 Milpas & 星期三, 日 19:21
再问一个问题
在一个DLL里
主线程TA(应该也是EXE的主线程吧)起来之后启动线程TB
TA有一个函数FA(是出口函数),
执行FA时需要与TB协调做一些工作,两者之间用事件来同步
TB完成某些操作后产生事件,FA再做一些处理然后结束
如果在TB内部执行EXE传过来的回调函数FB
而在FB中又会调用FA
这样的话,会是怎样的结果????
由 Milpas & 星期三, 日 19:23
是不是很容易晕啊?? [:D]
由 creation-zy & 星期三, 日 19:33
&回调函数和普通的函数有什么区别?——不就是把指针传给别人让它调用嘛。当然处于调
用者的线程空间了。——不同的线程可以共享代码/数据空间嘛。
&看来你的系统设计有问题—— FA call FB, FB call FA,... 怎么停下来??
由 Milpas & 星期三, 日 20:40
就是有问题啊,没问题我来这干嘛
我想不出有什么好办法解决上面的问题(不用消息)
由 cjc861 & 星期三, 日 21:01
附属线程的方法可以在主线程中执行,主要是用他来同步线程的syschronize()
由 creation-zy & 星期三, 日 21:19
| & & & & TB run
| & & & & &|
call FA & & |
| & & & & &|
send msg -& |
wait... & do sth...
| & & & & &|
| & & & &done!
| &&- &send msg &done!&
do sth... & |...
&——到目前为止,消息的使用没有任何问题。
&如果“在TB内部执行EXE传过来的回调函数FB而在FB中又会调用FA”,那么——
&显然,FB运行在TB线程内,被FB调用的FA也一样。如果这个FA没有与TB发生消息通讯,那
么没有任何问题;如果相反,即在TB线程内调用的FA过程向TB线程发送了一个消息,那么程
序就会陷入无限期等待——一个人正在等待自己给自己回信——而在等待的过程中他什么也
不能做(当然也不能写回信了)。我认为,如果TB中调用的FA向TB发出了消息,除非TB能够
抽出空来回复这个消息(据我所知,好像没办法的...),否则必定陷入无限期等待。
由 bluedorothy & 星期三, 日 21:20
ijuykuykjhkjk
由 Milpas & 星期五, 日 12:20
如果用事件事同步的话,用到
TEvent.WaitFor的时候线程就停住了,
如果用在主线程,整个进程挂起,窗口就拖不动了
有没有其它的方法,即不使线程挂起又能等到事件?
11 篇帖子 & 分页:1 / 1关于回调函数问题 - CNode技术社区
我。就测试个demo
var setUser = function () {
function callback() {
sql.open(conn_str, function (err, conn) {
if (err) {
console.log(&Error opening the connection!&);
conn.queryRaw(&SELECT Username,Password FROM Users&, function (err, results) {
if (err) {
console.log(&Error running query!&);
for (var i = 0; i & results.rows. i++) {
console.log(results.rows[i][0].toString());
return results.rows[1][0].toString();
return callback();
exports.setUser = setU
var users = require(’./dbCon.js’);
console.log(users.setUser());
node index.js
the result:
console.log is ok.
能看懂不。。。求教
代码格式化挺重要的,咋就这么不钻业捏~眼睛不好,花呀~编辑框已经提供了常见的样式~
疑问在哪?
他使用了高阶函数,首先外面少了一层函数调用;其次,return的数据到不了外层调用,undefined…闭包、异步及回调原理不太清晰吧^ ^
我也是要测试ajaxIm的demo 才搞一下这个。麻烦求教一下。
for (var i = 0; i & results.rows. i++) {
console.log(results.rows[i][0].toString());
这有结果吗?
我把你的代码稍微改改,NodeJS菜鸟风格- -正好今天写完年终总结,有点时间~~
首先是db.js:
var setUser = function (callback) {//callback回调,数据库访问是异步操作,直接return会悲剧
sql.open(conn_str, function (err, conn) {
if (err) {
console.log(&Error opening the connection!&);
return callback(err);
conn.queryRaw(&SELECT Username,Password FROM Users&, function (err, results) {
if (err) {
console.log(&Error running query!&);
return callback(err);
for (var i = 0; i & results.rows. i++) {
console.log(results.rows[i][0].toString());
//return results.rows[1][0].toString();//这里return的是内层函数
callback(err, results);//使用回调获取数据,第一个参数表示异常
exports.setUser = setU
index.js:
var User = require('./db.js');
User.setUser(function(err, data){
//handle err...
//handle data
});//此处传入一个函数作为回调获取结果
有的。(忙在群里
没及时刷新)楼下的兄弟帮我解决了。thanku all the same
谢谢。。我只想说
你们这年总结太及时了。虽然我没看懂。我研究研究 。。best wishes。
谢谢大家!
之前说少了一层调用说错了,代码中return callback()本身就调用了,我没看仔细,sorry,所以 打印肯定会有的~
@.@其实我只是想说,他的回调没写,就你写的那句。
大哥啊。。你去看看我刚提问的一个问题。。跟这个不是差别很多。。。
CNode 社区为国内最专业的 Node.js 开源技术社区,致力于 Node.js 的技术研究。
服务器赞助商为
,存储赞助商为
,由提供应用性能服务。
新手搭建 Node.js 服务器,推荐使用无需备案的菜鸟学习nodejs--回调函数
菜鸟学习nodejs--回调函数
什么是回调函数
如果大家使用过JQuery,那么会掉函数就像家常便饭一样,例如我们经常会给一个事件传一个function的参数,其实这就是回调函数,回调函数就是我们所说的异步,如果还是有点蒙,那么我们来举个例子。
我们新建一个index1.html和一个index2.html文件
在index1.html
$(function(){
$('p').hide('slow',functin(){
alter("他隐藏了");
在index2.html
function(){
$('p').hide('slow');
alert('他隐藏了');
两个函数,第一个出现的页面的字体是弹出弹框和隐藏p标签的文件几乎是同事,甚至是先有弹框,信息慢慢消失,而第二个函数,p中的信息慢慢的消失,然后出现弹框。
Node.js中的回调函数
新建一个callback.js文件
添加如下代码:
function haveBreakfast(food, drink, callback) {
console.log('早餐' + food + ', ' + drink);
if (callback && typeof(callback) === "function") {
callback();
haveBreakfast('toast', 'coffee', function() {
console.log('早餐吃完了,工作了啦!');
输出结果如下:
什么时候使用回调
什么时候使用呢,我们来看一个例子,然后再说明吧。
新建一个file1.txt,写上文本aaaa,新建一个file2.txt,写上文本bbb,然后新建要给callback2.js文件
在callback2中加入如下代码:
var fs = require('fs'),
http = require('http');
http.get({ host: '' }, function(res) {
console.log(" 从获取相应");
}).on('error', function(e) {
console.log("访问页面出现错误");
fs.readFile('file1.txt', 'utf8', function (err, data) {
if (err) throw
console.log('File 被读取' + data);
http.get({ host: '.cn' }, function(res) {
console.log("从.cn获取相应");
}).on('error', function(e) {
console.log("从.cn获取相应失败");
fs.readFile('file2.txt', 'utf8', function (err, data) {
if (err) throw
console.log('File2被读取,内容是' + data);
两次效果如下:
从上边的结果我们可以看出来,其实谁先访问,谁后访问都是没有固定顺序的,对于网络的访问,我们需要根据网宽等很多情况,对于文件的读取,如果文件太大,他们他一定是后读出来的,而这个情况正式我们要解释的什么时候用,对于顺序性没有严格要求,而只是需要结果,那么OK,回调是你最好的选择。
同步和异步
node.js希望我们再单一进程中使用异步编程,当然这个不是Node.js或者javascript独有的,而是一种风格,例如c#中的Tread,Task,java中的Thread,Runable等都是异步编程,重要的事情说三遍,这是一个种风格,这是一个种风格,这是一个种风格。如果我们使用同步,程序的运行可能就会照成阻塞,这样不利于我们CPU的利用。
我们介绍了js中的回调函数,我们也介绍了Node.js中怎么用回调函数,还介绍了同步和异步的区别,当然我们是建议用异步的。这样资源的利用率会大大提高。
我的热门文章
即使是一小步也想与你分享关于上传文件后的回调问题。。。_问答_ThinkSAAS
关于上传文件后的回调问题。。。
关于上传文件后的回调问题。。。
文件上传100%后,就出现400错误了,请问哪里设置有问题呢??
这个直接参考uploadify官方文档里面的例子,是有的,
也可以写个简单的文件上传》
添加你想要问的问题
PHP开发框架
开发工具/编程工具
服务器环境
ThinkSAAS商业授权:
ThinkSAAS为用户提供有偿个性定制开发服务
ThinkSAAS将为商业授权用户提供二次开发指导和技术支持
让ThinkSAAS更好,把建议拿来。
开发客服微信

我要回帖

更多关于 股票回调是什么意思 的文章

 

随机推荐