问题列表 - 第38399页

如何在没有网页冻结的情况下同步调用ajax

我有一些javascript,可以触发大约100个调用php脚本.php脚本占用大量内存并需要几秒钟才能完成,然后返回json响应pass或fail.

我不希望ajax调用是异步的,因为服务器会停止运行100个自身的实例,所以我尝试使用同步,唯一的问题是它冻结网页,而它一次调用脚本一个调用.

如何一次启动一个ajax调用而不冻结我正在使用的页面?

var a = [];
    a[0] = 'test';
    a[1] = 'hello';
    a[2] = 'another';

$(document).ready(function(){ 
  $.each(a, function(k,v) {
$.ajax({
  url:'/this-script-takes-a-few-seconds-to-complete.php',
  async:false,
  data: {foo: v},
  success: function(data){      
    console.log(data);  
  }
});
  });
});
Run Code Online (Sandbox Code Playgroud)

ajax jquery webpage freeze

3
推荐指数
1
解决办法
1万
查看次数

使用os.listdir解决OSError问题

我有一个包含90K文件的目录.这是一个非常大量的文件,可以像ls失败一样重击功能.当然,os.listdir()从我的python(Mac Python,2.5版)脚本开始; 它失败了OSError: [Errno 12] Cannot allocate memory: '.'

人们会说"不要把那么多文件放在一个目录里!你疯了吗?" - 但我喜欢假装我生活在未来,一个辉煌,发光的地方,我可以随意使用千兆字节的内存,而且不需要太担心我的文件到底在哪里,只要有我的旋转盘片上留下了锈迹.

那么,这个os.listdir()问题有一个很好的解决方法吗?我考虑过只是冒出来find,但这有点严重,不幸的find是递归,Mac OS X 10.6上没有受支持的maxdepth选项.

这是os.listdir通过shell来查找的内容,粗略地说:

def ls(directory): 
    import os
    files = os.popen4('find %s' % directory)[1].read().rstrip().split('\n')
    files.remove(directory)
    return files # probably want to remove dir prefix from everything in here too
Run Code Online (Sandbox Code Playgroud)

更新: os.listdir()在Python 2.6中成功.

python macos

11
推荐指数
2
解决办法
2987
查看次数

阻塞线程占用了哪些资源

在异步编程模型中编写代码的主要目的之一(更具体地说 - 使用回调而不是阻塞线程)是为了最小化系统中阻塞线程的数量.

对于运行线程,由于上下文切换和同步成本,这个目标是显而易见的.

但是被阻止的线程呢?为什么减少它们的数量如此重要?

例如,在等待来自Web服务器的响应时,线程被阻塞,并且不占用任何CPU时间,并且不参与任何上下文切换.

所以我的问题是:除了RAM(每个线程大约1MB?)阻塞线程占用了哪些其他资源?

另一个更主观的问题是:在什么情况下,这个成本真的证明了编写异步代码的麻烦(例如,价格可能是将你的好的连贯方法拆分为大量的beginXXX和EndXXX方法,并将参数和局部变量移动到类字段).

更新 - 我没有提及或没有给予足够重视的其他原因:

  1. 更多线程意味着更多地锁定公共资源

  2. 更多线程意味着更多创建和处理线程,这是昂贵的

  3. 系统肯定会耗尽线程/ RAM然后停止服务客户端(在Web服务器方案中,这实际上可以降低服务)

.net c# multithreading asynchronous

7
推荐指数
1
解决办法
939
查看次数

我的Oracle视图使用了一个不存在的表,但我仍然可以查询它

我有一个Oracle视图,它使用我在任何地方都找不到的表.但是,我仍然可以查询视图,我认为这是不可能的.

视图内容是否缓存在某个地方,从表格仍然存在的时候开始,还是我对表格看起来不够努力?

为了清楚起见:我已经查看了ALL_TABLES和ALL_OBJECTS,并且表中(或其他任何内容)都没有出现.

sql oracle view

4
推荐指数
2
解决办法
3296
查看次数

过滤提琴手流量

是否可以指示Fiddler仅显示指向特定主机名的流量?换句话说,可以为主机过滤Fiddler流量吗?

fiddler

210
推荐指数
3
解决办法
9万
查看次数

正则表达式验证器用于捕获非字母数字字符

这是一个非常密集的问题,但我很累.

我需要一个可以在验证器控件中执行的正则表达式,它将捕获任何非字母数字字符.换句话说,如果字符串仅包含az,AZ或0-9,则regexp需要匹配.

我知道如果字符串中存在非法字符,那么编写一个匹配的正则表达式会非常容易 - 问题是我需要相反,因为它在验证器中.那是什么让我头疼.

解决方案赞赏

.net regex

1
推荐指数
1
解决办法
6419
查看次数

如何在jQuery HTML插入或换行中使用'window.location.href'?

我正在尝试将链接插入到具有id"popup"的空<a>中.该链接将在弹出框中打开当前页面(我将在稍后定义参数).我正在尝试将制作超链接所需的HTML与JS变量'window.location.href'串在一起 - 如何将它们串在一起?即如何修复它以使其工作,或将其重写为'window.location.href'作为变量的函数:

$("#popup").html('<a href=' . window.location.href . '>open popup</a>');
Run Code Online (Sandbox Code Playgroud)

jquery uri replace insert word-wrap

0
推荐指数
1
解决办法
4864
查看次数

当我尝试在Windows Server 2008中安装64位mongodb时,"访问被拒绝"

我所做的就是在脚本下运行:D:\ Tools\MongoDb\bin\mongod.exe --dbpath D:\ MongoDb\data\

然后我得到异常:连接到服务控制管理器时出错:访问被拒绝.(5)

我使用管理员帐户来操作它,我已经创建了与脚本相关的文件夹.

当我在32位Windows Server 2003中安装32位mongodb时,我没有遇到这样的问题.

我很感激任何帮助!

x86-64 mongodb windows-server-2008-r2

13
推荐指数
1
解决办法
2万
查看次数

如何从C#.NET代码生成JS

前段时间(比如3年或4年),我听说过基于C#.NET源代码生成JavaScript(客户端)代码的能力.我不记得细节,可能仅用于验证目的......

如果您对此有所了解,请提醒一下吗?

非常感谢.

PS欢迎任何想法.

.net javascript c# asp.net

3
推荐指数
1
解决办法
1786
查看次数

构建json使用for循环发送到php(也许)

我已经google了,但我可以找到一种方法来使用jQuery构建json并使用for循环将其发送到php.我有一个html表,我想从每一行中获取值(我不知道将有多少行/值)构造一个json字符串,即.[{"row": 1, "supp_short_code" : blah blah....}, {"row": 2, ....} ....] 但我不知道如果jQuery发现更多的值,如果有意义的话,如何继续添加到json数据串?

编辑:

所以,如果我有这个

$('#submit').live('click',function(){ 
                    var supp_short_code=$('.supp_short_code').text();
                    var project_ref=$('.project_ref').text();
                    var om_part_no=$('.om_part_no').text();
                    var description=$('.description').text();
                    var cost_of_items=$('.cost_of_items').text();
                    var cost_total=$('.cost_total').text();
                    var dataString = 'string=//' + supp_short_code + '//' + project_ref + '//' + om_part_no + '//' + description + '//' + cost_of_items + '//' + cost_total

                    $.ajax
                        ({
                        type: "POST",
                        url: "order.php",
                        data: dataString,
                        cache: false,
                        success: function()
                            {
                                alert("Order Submitted");
                            }
                        });
                });
Run Code Online (Sandbox Code Playgroud)

那么(大致)我需要在这段代码中改变什么? 截图

好的,正如您在屏幕截图中看到的那样,当用户点击顶部表格中的一行时,我正在使用jquery动态添加底部表格,计算总计并且他们可以指定他们想要使用哪个供应商.然后我使用jquery将这些值集中到顶部的jquery代码的$('submit')位.然后我想将这些值发送到一个php页面,它将以某种方式解析收到的数据,将其插入到mysql数据库中,就像"id 1 product blah price blah supplier blah …

php jquery json for-loop

0
推荐指数
1
解决办法
1943
查看次数