`

resty thread

 
阅读更多
local t = {}

local function produce_thread()
  for i=1,5 do
    t[i] = i
    ngx.say("produce:",i)
    ngx.sleep(0.01)
  end
end

local function consume_thread()
  for i=1,5 do
    for k,v in pairs(t) do
      if t[k] ~= 0 then
        ngx.say("consume:",t[k])        
        t[k] = 0
      end          
    end
    ngx.sleep(0.03)
  end
end

 local tp, err = ngx.thread.spawn(produce_thread)
 if not tp then
     ngx.say("failed to create produce thread: ", err)
     return
 end
 
 local tc, err = ngx.thread.spawn(consume_thread)
 if not tc then
     ngx.say("failed to create consume thread: ", err)
     return
 end                              
 
 local ok, res = ngx.thread.wait(tp, tc)
 if not ok then
     ngx.say("failed to wait: ", res)
     return
 end               

produce:1
consume:1
produce:2
produce:3
consume:2
consume:3
produce:4
produce:5
consume:4
consume:5                                                                                                                                                                                                                                                                                                                                            
分享到:
评论

相关推荐

    开源项目-go-resty-resty.zip

    8. **中间件支持**:Go Resty提供了一个中间件系统,允许开发者自定义请求和响应的处理逻辑,增强了库的可扩展性。 9. **调试模式**:开启调试模式后,Go Resty会打印详细的请求和响应信息,帮助开发者排查问题。 ...

    resty最新代码resty最新代码

    resty最新代码resty最新代码resty最新代码resty最新代码resty最新代码resty最新代码resty最新代码resty最新代码resty最新代码resty最新代码resty最新代码resty最新代码resty最新代码resty最新代码resty最新代码resty...

    lua-resty-redis

    《深入理解Lua-resty-redis库的安装与应用》 Lua-resty-redis是一个基于OpenResty(一个扩展了Nginx的Web平台)的Lua库,它为开发者提供了与Redis数据库进行交互的能力。在现代Web开发中,Redis作为内存数据存储...

    lua-resty-template

    而lua-resty-template和大多数模板引擎是类似的,大体内容有: 模板位置:从哪里查找模板; 变量输出/转义:变量值输出; 代码片段:执行代码片段,完成如if/else、for等复杂逻辑,调用对象函数/方法; 注释:解释...

    接口测试工具-resty-jar包

    Resty resty = new Resty(); // 发送GET请求 String response = resty.get("http://example.com/api/resource"); System.out.println(response); // 发送POST请求 Map, String> params = new HashMap(); params....

    lua-resty-redis-connector-master

    《lua-resty-redis-connector:Lua在OpenResty中的Redis连接器详解》 在现代Web服务开发中,Lua作为一种轻量级脚本语言,因其高效、简洁的特性被广泛应用于服务器端。OpenResty是基于Nginx的高性能Web平台,它集成...

    lua-resty-mongol-master已编译

    《lua-resty-mongol在OpenResty中的应用与集成》 lua-resty-mongol是基于OpenResty的一个lua库,专为处理MongoDB连接和操作而设计。标题"lua-resty-mongol-master已编译"表明我们已经获取到lua-resty-mongol的最新...

    resty.http资源

    《深入理解resty.http资源与Lua在HTTP网络编程中的应用》 ...它是我们进行Web服务交互的...在实际项目中,结合OpenResty的其他组件,如`lua-resty-mysql`、`lua-resty-redis`等,可以构建出强大的Web服务和中间件系统。

    lua-resty-core, 新的基于 lua Nginx 模块的API.zip

    lua-resty-core, 新的基于 lua Nginx 模块的API 电子邮件名称lua-resty-core - 用于ngx_http_lua_module和/或者ngx_stream_lua_module的基于new的Lua table-内容名称状态概要说明描述先决条件API实现了r

    lua-resty-shell, 用于OpenResty应用服务器的微型子进程/shell 库.zip

    lua-resty-shell, 用于OpenResty应用服务器的微型子进程/shell 库 简介当你需要执行子进程( 或者 shell 命令) 时,这个小型库是用于与OpenResty应用程序一起使用的。 除了 non completely完全不阻塞外,即使是完全不...

    lua-resty-mongol_openresty连接mongoldb的lua库

    **标题详解:**"lua-resty-mongol_openresty连接mongoldb的lua库" “lua-resty-mongol”是专为OpenResty设计的一个lua库,用于在OpenResty环境中与MongoDB数据库进行交互。这个库的创建是为了在高性能的Web服务中...

    lua-resty-limit-traffic, 在 openresty/ngx_lua中,用于限制和控制流量的Lua库.zip

    lua-resty-limit-traffic, 在 openresty/ngx_lua中,用于限制和控制流量的Lua库 电子邮件名称lua-resty-limit-traffic - 用于限制和控制 openresty/ngx_lua中流量的Lua库目录名称状态概要说明描述安装工具社区服务...

    lua-resty-nettle, LuaJIT FFI的绑定( 低级加密库).zip

    lua-resty-nettle, LuaJIT FFI的绑定( 低级加密库) lua-resty-nettle针对荨麻疹( 低级别加密库)的LuaJIT FFI绑定概要local require = requirelocal print = printlocal gsub = string.g

    awesome-resty, 质量OpenResty库的列表和资源.zip

    awesome-resty, 质量OpenResty库的列表和资源 的restyopenresty/Nginx 模块,Lua库和相关资源的列表。什么是 OpenResty OpenResty是一个完整的web平台,集成了标准的Nginx 核心。LuaJIT 。许多精心编写的Lua库。许多...

    lua-resty-test, 在Openresty上,基于ngx_lua的测试框架.zip

    lua-resty-test, 在Openresty上,基于ngx_lua的测试框架 电子邮件名称基于Openresty的lua-resty-test Ngx_lua测试框架#Description 这里Lua库是测试ngx_lua源或者它的他服务器( tcp或者 udp )的测试框架:...

    lua-resty-validation, 用于Lua和OpenResty的验证库( 输入验证和筛选).zip

    lua-resty-validation, 用于Lua和OpenResty的验证库( 输入验证和筛选) lua-resty-validationlua-resty-validation 是用于Lua和OpenResty的可以扩展链接验证和过滤库。带lua-resty-validation的 Hello Worldlocal val

Global site tag (gtag.js) - Google Analytics