pomelo Channel

2023-10-05 14:42
文章标签 channel pomelo

本文主要是介绍pomelo Channel,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Api

ChannelService

ChannelService is created by channel component which is a default loaded component of pomelo and channel service would be accessed by app.get(‘channelService’).

 createChannel(name)getChannel(name,create) create = truedestroyChannel(name)pushMessageByUids(route, msg, uids, opts, cb)broadcast(stype, route, msg, opts, cb)

Channel

add(uid, sid)   //uid - user id//sid - frontend server id which user has connected to
leave(uid, sid)
getMembers()
getMember(uid)
destroy()
pushMessage(route, msg, opts, cb)

Sample

Mainly Used
- getChannel(name,create)
- add(uid, sid)
- pushMessage(route, msg, opts, cb)
- leave(uid,sid)

  var exp = module.exports;//get channelvar getChannel = exp.getChannel = function() {if(channel) {return channel;}channel = pomelo.app.get('channelService').getChannel('area_' + id, true);return channel;};//pushMessagegetChannel().pushMessage({route: 'onPickItem', entityId: args.entityId, target: args.target, score: treasure.score});/*** Add entity to area * @param {Object} e Entity to add to the area.*/exp.addEntity = function(e) {    //e is a entity,it maybe a playerif (e.type === EntityType.PLAYER) {getChannel().add(e.id, e.serverId);addEvent(e);               //add event listenerplayers[e.id] = e.entityId;}return true;};

这篇关于pomelo Channel的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/151415

相关文章

Go Channel的实现

channel作为goroutine间通信和同步的重要途径,是Go runtime层实现CSP并发模型重要的成员。在不理解底层实现时,经常在使用中对channe相关语法的表现感到疑惑,尤其是select case的行为。因此在了解channel的应用前先看一眼channel的实现。 Channel内存布局 channel是go的内置类型,它可以被存储到变量中,可以作为函数的参数或返回值,它在r

【go 通道】go语言通道channel

通过使用通道,在多个goroutine发送和接受共享的数据,达到数据同步的目的。 通道,他有点像在两个routine之间架设的管道,一个goroutine可以往这个管道里塞数据,另外一个可以从这个管道里取数据,有点类似于我们说的队列。 声明一个通道很简单,我们使用chan关键字即可,除此之外,还要指定通道中发送和接收数据的类型,这样我们才能知道,要发送什么类型的数据给通道,也知道从这个通道里可

Java - NIO之Channel(FileChannel)

一、关于Channel     Java NIO的通道(Channel)类似流,但又有些不同:         既可以从通道中读取数据,又可以写数据到通道。但流的读写通常是单向的。         通道可以异步地读写。         通道中的数据总是要先读到一个Buffer,或者总是要从一个Buffer中写入。       Java NIO中最重要的通道的实现:

DDR的Controller、Channel、Chip、Rank、Bank、Row、Column、Sided、Dimm

目录 概览 1.概览             先从半导体生产开始,生产出来还没切割的叫晶圆(wafer)。切割出来还没封装的叫裸die(bare die)。封装好的叫颗粒(component)。做成内存条后叫模组(module)。下文我们也会按这样的称呼去区分。 2.Controller(内存控制器)         一开始内存控制器在主板上有独立的芯片;在英特尔微处理器

【TOJ】2248 Channel Design 最小树形图——朱刘算法

传送门:【TOJ】2248 Channel Design 题目大意:大概意思是需要从水库(编号始终为1)引水到所有的农场(编号2~n),通过m条水管引水直接或间接的得到水(即有边(1,2),(2,3),则说明3能间接的得到水),其中水管是单向的,且每条水管的铺设都需要一定的费用,问要从水库引水到所有的农场的最少花费。如果无解输出impossible。 题目分析:最小树形图模板题。

【读论文】MUTUAL-CHANNEL LOSS

论文题目:《The Devil is in the Channels: Mutual-Channel Loss for Fine-Grained Image Classification》 链接:https://arxiv.org/abs/2002.04264 来源:IEEE TIP2020 细粒度分类的主要思想是找出各个子类间的可区分特征,因此文章指出要尽早在通道上进行钻研,而不是从合并

lua网络处理+pomelo搭建

1: 了解linux命令行 linux 命令行: 1:  linux下,目录中的"~"符号代表什么意思?     ~ 代表当前用户的主目录 比如: 如果你是root登陆,那么他的家目录就是/root,在提示符里面显示的就是[root@localhost ~]# 如果你是普通用户user登陆,那么他的家目录就是/home/user,在提示符里面显示的就是[user@localho

极简的go语言channel入门

写在文章开头 很久没写go语言相关的文章了,近期准备整理整理go语言channel相关的知识点,而本文将通过几个示例快速带读者了解channel的基本概念,希望对你有帮助。 Hi,我是 sharkChili ,是个不断在硬核技术上作死的 java coder ,是 CSDN的博客专家 ,也是开源项目 Java Guide 的维护者之一,熟悉 Java 也会一点 Go ,偶尔也会在 C源码

GO语言学习——(1) channel入门

(一)简介    Go语言所提倡的一句话是:应该以通信作为手段来共享内存,这句话最直接的体现就是channel,它也是Go语言预定义的数据类型之一。    channel提供了一种机制,它既可以同步两个并发执行的函数,又可以额昂两个函数通过相互传递特定类型的值来通信。 (二)channel的基本概念    在go语言中,chnnel既指通道类型,也指代可以传递某种类型的值的通道。通道即某一

golang学习笔记——channel使用场景

在Golang中,Channel是一种非常重要的并发编程原语,它提供了一种安全、高效地在Goroutine之间进行通信的机制。Channel的使用场景非常广泛,以下是一些主要的使用场景: 1. 消息传递 基本的数据传输:Channel可以用于在不同的Goroutine之间传递数据。一个Goroutine可以将数据发送到Channel,而另一个Goroutine可以从Channel接收数据。这种