CN109240773A - 解决房间串数据的方法、装置、终端及可读存储介质 - Google Patents

解决房间串数据的方法、装置、终端及可读存储介质 Download PDF

Info

Publication number
CN109240773A
CN109240773A CN201810948157.5A CN201810948157A CN109240773A CN 109240773 A CN109240773 A CN 109240773A CN 201810948157 A CN201810948157 A CN 201810948157A CN 109240773 A CN109240773 A CN 109240773A
Authority
CN
China
Prior art keywords
current room
room
singleton
information
identification information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810948157.5A
Other languages
English (en)
Other versions
CN109240773B (zh
Inventor
张磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201810948157.5A priority Critical patent/CN109240773B/zh
Publication of CN109240773A publication Critical patent/CN109240773A/zh
Application granted granted Critical
Publication of CN109240773B publication Critical patent/CN109240773B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/449Object-oriented method invocation or resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • G06F8/315Object-oriented languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/541Client-server

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Time Recorders, Dirve Recorders, Access Control (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种解决房间串数据的方法,应用于计算机技术领域,当当前房间连接成功时,获取当前房间的标识信息和单例对象信息,以键值对的形式绑定并缓存当前房间的单例对象信息和标识信息,其中,键为标识信息,值为单例对象,当检测到切换当前房间的操作时,根据当前房间的标识信息,释放当前房间的单例对象信息。本发明实施例还公开了一种解决房间串数据的装置、终端及可读存储介质,当当前房间被切换时,既释放该房间的单例对象信息,解决房间串数据的问题。

Description

解决房间串数据的方法、装置、终端及可读存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种解决房间串数据的方法、装置、终端及可读存储介质。
背景技术
随着网络基础设施的健全和互联网产品的日益丰富,网络直播随之发展而起。目前,直播应用程序均采用单例模式,即在应用程序运行期间,使类的一个对象成为应用程序中的唯一实例,直到应用程序结束运行才会释放该对象。
但是,当用户切换直播间时,如果应用程序仍旧采用单例模式,即应用程序中仅有一个单例对象,则会使上个直播间的数据被缓存到下个直播间,发生直播间串数据的问题,例如,当用户从A直播间切换到B直播间时,由于A直播间的数据被存储到该单例对象中,当切换到B直播间,B直播间调用该单例对象时,将可能获取到A直播间的数据。
发明内容
本发明的主要目的在于提供一种解决房间串数据的方法、装置、终端及可读存储介质,旨在解决现有技术中切换房间时,房间串数据的技术问题。
为实现上述目的,本发明实施例第一方面提供一种解决房间串数据的方法,包括:
当当前房间连接成功时,获取所述当前房间的标识信息和单例对象;
以键值对的形式,绑定并缓存所述当前房间的标识信息和单例对象信息,所述键为标识信息,所述值为单例对象信息;
当检测到切换所述当前房间的操作时,根据所述当前房间的标识信息,释放所述当前房间的单例对象。
本发明实施例第二方面提供一种的装置,包括:
获取模块,用于当当前房间连接成功时,获取当前房间的标识信息和单例对象;
绑定缓存模块,用于以键值对的形式,绑定并缓存所述当前房间的标识信息和单例对象信息,所述键为标识信息,所述值为单例对象信息;
释放模块,用于当检测到切换所述当前房间的操作时,根据所述当前房间的标识信息,释放所述当前房间的单例对象。
本发明实施例第三方面提供了一种终端,包括:
存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现本发明实施例第一方面提供的解决房间串数据的方法。
本发明实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例第一方面提供的解决房间串数据的方法。
从上述本发明实施例可知,本发明提供的解决房间串数据的方法、装置、终端及可读存储介质,在本发明实施例中,当当前房间连接成功时,获取当前房间的标识信息和单例对象信息,以键值对的形式绑定并缓存当前房间的单例对象信息和标识信息,其中,键为标识信息,值为单例对象,当检测到切换当前房间的操作时,根据当前房间的标识信息,释放当前房间的单例对象信息,当房间切换时,既释放房间的单例对象信息,解决房间串数据的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明第一实施例提供的解决房间串数据的方法的流程示意图;
图2为本发明第二实施例提供的解决房间串数据的方法的流程示意图;
图3为本发明第三实施例提供的解决房间串数据的装置的结构示意图;
图4示出了一种终端的硬件结构图。
具体实施方式
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下各本发明实施例的典型应用场景是在用户观看直播时,当用户需要切换房间,切换到的新房间可能获取到上一个房间的数据,因此,需要将存储房间的数据的单例对象与房间的标识信息绑定,在用户切换房间时,释放该房间的单例对象。具体技术方案的描述参见下述各实施例。
请参阅图1,图1为本发明第一实施例提供的解决房间串数据的方法的流程示意图,该方法可应用于终端中,该终端可包括:手机、平板电脑(Portable Android Device,PAD),笔记本电脑以及个人数字助理(Personal Digital Assistant,PDA)等设备,该方法包括:
S101、当当前房间连接成功时,获取当前房间的标识信息和单例对象;
当房间被打开的时候,系统会接收到一些回调消息,表示房间已经连接成功,然后,获取当前房间的标识信息和单例对象,该标识信息为当前房间的唯一身份编码,该单例对象内包括有当前房间的数据信息。
其中,单例对象是指软件在单例模式下,在其核心结构中只包含一个被称为单例的特殊类,一个类只有一个实例,即一个类只有一个对象。本发明实施例中,将该单例模式下的对象称作单例对象。
S102、以键值对的形式,绑定并缓存当前房间的标识信息和单例对象信息,键为标识信息,值为单例对象;
具体的,以当前房间的标识信息为键,当前房间的单例对象信息为值,将两者以键值对的形式绑定并缓存起来。
其中,键值对是指一种分类存储数据的组织形式,其中,键是指所存值的编号,值是指要存放的数据,键与值之间为映射关系。
S103、当检测到切换当前房间的操作时,根据当前房间的标识信息,释放当前房间的单例对象。
由于将房间与单例对象以键值对的形式绑定起来,当检测到切换房间的操作时,可根据当前房间的标识信息,获取其单例对象信息,然后,释放当前房间的单例对象。可避免切换到的新房间获取到该单例对象中的数据信息,发生房间串数据的问题。
在本发明实施例中,当当前房间连接成功时,获取当前房间的标识信息和单例对象信息,以键值对的形式绑定并缓存当前房间的单例对象信息和标识信息,其中,键为标识信息,值为单例对象,当检测到切换当前房间的操作时,根据当前房间的标识信息,释放当前房间的单例对象信息,当房间切换时,既释放房间的单例对象信息,解决房间串数据的问题。
请参阅图2,图2为本发明第二实施例提供的解决房间串数据的方法的流程示意图,该方法可应用于终端中,在本发明实施例中,单例对象以ComicsManager逻辑单元为例,该方法包括:
S201、当当前房间连接成功时,获取当前房间的标识信息;
当房间被打开的时候,系统会接收到一些回调消息,例如onRoomConnected表示房间已经连接成功。此时,示例性的,可调用RoomInfoManager.getInstance().getRoomId()方法来获取当前房间的标识信息。
其中,RoomInfoManager是一个管理房间信息的类,即可通过RoomInfoManager类获取当前房间的标识信息。
S202、构建并调用public公有类方法,该方法用于获取当前房间的对象;
构建public公有类方法,该方法用于获取当前房间的对象。示例性的,将该方法定义为:
public static ComicsManager getMgr() {}
其中,该方法是一个public公有类型的方法,这样可使其他对象具有访问和调用该方法的权限,然后,将该方法设计成一个static静态的方法,这样该方法会在静态区中,其他对象可以直接通过类CLASS名来调用该方法,提高了该方法调用的便捷性。
调用上述方法,返回一个ComicsManager类型的对象。具体从缓存中获取该对象的方法是:
ComicsManager manager=ManagerFactory.getManagerObj(roomId,ComicsManager.class);getManagerObj。
缓存是指数据交换的缓冲区(称作Cache),当需要读取数据时,会首先从缓存中查找需要的数据。
S203、判断是否获取到当前房间的对象;
若没有获取到当前房间的对象,则执行步骤S204:调用构造函数,得到当前房间的对象,然后执行步骤S205:调用返回函数,得到当前房间的单例对象。
具体的,若上述方法返回manager==null,则表示没有该对象,即说明缓存中没有存储过该对象的相关信息。此时,需要创建一个单例对象,即实例化一个单例对象。示例性的,调用构造函数:ComicsManager manager=new ComicsManager();,得到一个全新的ComicsManager类型的对象manager。
进一步地,示例性的,通过调用return manager返回函数来将生成的ComicsManager类型的manager返回,这样就得到了一个唯一对象,即单例对象。
若获取到当前房间的对象,则执行步骤S205:调用返回函数,得到当前房间的单例对象。
具体的,若上述方法返回的manager不是一个null,说明从缓存中获取到了曾经的缓存对象,此时,执行步骤S205。
S206、构建全局对象,调用全局对象中的判别函数,判断全局对象中是否缓存有当前房间的单例对象信息;
具体的,示例性的,setManagerObj是用于缓存房间级别的单例对象的函数,该函数的定义如下:
public static void setManagerObj(String roomId,Object obj)
其中,该函数是一个公有public类型的tatic静态的函数,没有返回值信息,该函数具有两个参数,分别是String字符串类型的roomId,用于标记房间的标识信息,其次是Object类型的单例对象信息。由于Object类型是Java语言中最顶层的一个抽象类,鉴于面向对象语言的特性,Object可以用于承载任意子类对象,也就是说Object类型的对象可以用于存储任意对象信息,将单例对象设计成Object类型,即能实现setManagerObj函数能够承载缓存任意数据的目的。
进一步地,构建一个缓存数据结构来存储上述单例对象信息,为了能够实现String类型的RoomId与Object类型的单例对象数据信息之间的一个映射关系。示例性的,构建全局对象MAP去存储该映射关系,该Map对象中存储的是一个键值对集合信息,其中键设计为String类型的数据,值设计成一个Object类型的数据。
具体的,通过定义对象private HashMap<String,Object>roomObjectMap=newHashMap();实现,然后,通过roomObjectMap对象来进行数据的缓存处理,其中缓存的数据结构中键是房间标识信息,值是单例对象。
其中,在定义roomObjectMap对象的时候,通过构造函数new HashMap();来实现对roomObjectMap对象的初始化流程。
示例性的,在缓存上述单例对象的时候,通过调用roomObjectMap对象中的roomObjectMap.containsKey(roomId)方法来判定roomObjectMap对象中是否已经存在该房间的单例对象,即是否已经缓存过该房间的数据信息。
更多的,缓存上述单例对象之前,在setManagerObj函数中,首先通过roomId==null||obj==null的方式来判断roomId是否是一个空对象或者obj是否是一个空的对象,如果返回false,表示两者中至少有一个为空,此时我们就直接return来终止整个流程的执行。否则继续通过TextUtils.isEmpty(roomId)方法来判定roomId中的内容是否是空字符串,若TextUtils.isEmpty(roomId)返回false,表示不为空字符串,否则是空字符串。若是空字符串,我们就通过return终止缓存流程,如果不是空字符串,则开始对上述单例对象进行缓存处理。
若全局对象中没有缓存有当前房间的单例对象信息,则执行步骤S207:调用全局对象的缓存函数,将当前房间的单例对象以值的形式存储在全局对象中,将当前房间的标识信息以键的形式存储在全局对象中,然后执行步骤S208。
具体的,若roomObjectMap对象中没有当前房间的单例对象信息,通过调用roomObjectMap.put(roomId,obj)缓存函数,将房间标识信息roomId和单例对象信息obj以键值对的形式存储在roomObjectMap对象中,其中,键为房间标识信息roomId,值为单例对象信息obj。
若全局对象中缓存有当前房间的单例对象信息,则执行步骤S208。
具体的,若roomObjectMap对象中缓存有当前房间的单例对象信息,则直接执行步骤S208。
S208、根据当前房间的标识信息,调用全局对象的获取函数,获取当前房间的单例对象信息;
具体的,示例性的,getManagerObj函数用于获取缓存对象的函数,该函数的定义如下:
public static void getManagerObj(String roomId,Class cls);
其中,该函数一样是一个public公有类型的static静态函数,没有返回值,该函数具有两个参数,分别是String字符串类型的roomId,用于标记房间的标识信息,其次是Class类型的cls。
调用roomObjectMap.get(roomId)方法来得到键值对中roomId所绑定的obj类型的单例对象,接下来通过调用obj中的getClass获取函数得到该obj类型的单例对象的class信息,然后通过class==cls方法来判定从缓存中取出来的class对象和参数中传递进来的cls对象是否一致。如一致,则说明取出来的对象合法,则直接通过return obj方法将取得的单例对象进行返回处理,若不一致,说明取出来的对象不合法,则通过returnnull方法返回一个空对象。
更多的,getManagerObj函数首先会对roomId和cls进行上述步骤S206中相同的判空处理,判定方法与前述步骤S206中相同,此处不再赘述。若判定通过,则开始获取上述缓存的单例对象。
S209、构建释放函数,释放当前房间的单例对象信息。
示例性的,通过构建释放函数来释放当前房间的单例对象信息,该释放函数的具体定义如下:
public static void removeManagerObj(String roomId);
更多的,需首先对roomId进行判空和空字符串的判定,判定方法与前述步骤S206中相同,此处不再赘述。如果判定通过,再通过调用上述释放函数来将单例对象中缓存的数据从roomObjectMap对象中进行移除,从而完成对当前房间单例对象的释放操作。
在本发明实施例中,当当前房间连接成功时,获取当前房间的标识信息和单例对象信息,以键值对的形式绑定并缓存当前房间的单例对象信息和标识信息,其中,键为标识信息,值为单例对象,当检测到切换当前房间的操作时,根据当前房间的标识信息,释放当前房间的单例对象信息,当房间切换时,既释放房间的单例对象信息,解决房间串数据的问题。
请参阅图3,图3为本发明第三实施例提供的解决房间串数据的装置的结构示意图,该装置包括:
获取模块301、绑定缓存模块302和释放模块303;
获取模块301,用于当当前房间连接成功时,获取该当前房间的标识信息和单例对象。
当房间被打开的时候,系统会接收到一些回调消息,表示房间已经连接成功,然后,获取当前房间的标识信息和单例对象,该标识信息为当前房间的唯一身份编码,该单例对象内包括有当前房间的数据信息。
绑定缓存模块302,用于以键值对的形式,绑定并缓存该当前房间的标识信息和单例对象信息,键为标识信息,值为单例对象信息。
具体的,以当前房间的标识信息为键,当前房间的单例对象信息为值,将两者以键值对的形式绑定并缓存起来。
释放模块303,用于当检测到切换当前房间的操作时,根据该当前房间的标识信息,释放该当前房间的单例对象。
由于将房间与单例对象以键值对的形式绑定起来,当检测到切换房间的操作时,可根据当前房间的标识信息,获取其单例对象信息,然后,释放当前房间的单例对象。可避免切换到的新房间获取到该单例对象中的数据信息,发生房间串数据的问题。
在本发明实施例中,当当前房间连接成功时,获取当前房间的标识信息和单例对象信息,以键值对的形式绑定并缓存当前房间的单例对象信息和标识信息,其中,键为标识信息,值为单例对象,当检测到切换当前房间的操作时,根据当前房间的标识信息,释放当前房间的单例对象信息,当房间切换时,既释放房间的单例对象信息,解决房间串数据的问题。
请参阅图4,图4示出了一种终端的硬件结构图。
本实施例中所描述的终端,包括:
存储器41、处理器42及存储在存储器41上并可在处理器上运行的计算机程序,处理器执行该程序时实现前述图1和图2所示实施例中描述的解决房间串数据的方法。
进一步地,该终端还包括:
至少一个输入设备43;至少一个输出设备44。
上述存储器41、处理器42输入设备43和输出设备44通过总线45连接。
其中,输入设备43具体可为摄像头、触控面板、物理按键或者鼠标等等。输出设备44具体可为显示屏。
存储器41可以是高速随机存取记忆体(RAM,Random Access Memory)存储器,也可为非不稳定的存储器(non-volatile memory),例如磁盘存储器。存储器41用于存储一组可执行程序代码,处理器42与存储器41耦合。
进一步地,本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是设置于上述各实施例中的终端中,该计算机可读存储介质可以是前述图4所示实施例中的存储器。该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现前述图1所示实施例中描述的解决房间串数据的方法。进一步地,该计算机可存储介质还可以是U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上为对本发明所提供的一种解决房间串数据的方法、装置、终端及可读存储介质的描述,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种解决房间串数据的方法,其特征在于,所述方法包括:
当当前房间连接成功时,获取所述当前房间的标识信息和单例对象;
以键值对的形式,绑定并缓存所述当前房间的标识信息和单例对象信息,所述键为标识信息,所述值为单例对象信息;
当检测到切换所述当前房间的操作时,根据所述当前房间的标识信息,释放所述当前房间的单例对象。
2.根据权利要求1所述的方法,其特征在于,所述获取所述当前房间的单例对象信息包括:
构建public公有类方法,所述public公有类方法用于获取所述当前房间的对象;
调用所述public公有类方法,当获取到所述当前房间的对象时,调用返回函数,得到所述当前房间的单例对象。
3.根据权利要求2所述的方法,其特征在于,所述调用所述public公有类方法之后,还包括:
当获取到所述当前房间的对象为空时,则调用构造函数,得到所述当前房间的对象,执行调用所述返回函数,得到所述当前房间的单例对象的步骤。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述以键值对的形式,绑定并缓存所述当前房间的标识信息和单例对象信息包括:
构建全局对象,将所述当前房间的标识信息和单例对象信息绑定并缓存到所述全局对象中,所述全局对象用于存储键值对形式的数据信息。
5.根据权利要求4所述的方法,其特征在于,所述构建全局对象,将所述当前房间的标识信息和单例对象信息绑定并缓存到所述全局对象中包括:
调用所述全局对象中的判别函数;
判断所述全局对象中是否缓存有所述当前房间的单例对象信息;
若所述全局对象中没有缓存有所述当前房间的单例对象信息,则通过调用全局对象的缓存函数,将所述当前房间的单例对象以值的形式存储在所述全局对象中,将所述当前房间的标识信息以键的形式存储在所述全局对象中。
6.根据权利要求5所述的方法,其特征在于,所述判断所述全局对象中是否缓存有所述当前房间的单例对象信息之后,还包括:
若所述全局对象中缓存有所述当前房间的单例对象信息,则执行当检测到切换房间的操作时,根据所述当前房间的标识信息,释放所述当前房间的单例对象的操作。
7.根据权利要求1所述的方法,其特征在于,所述根据所述当前房间的标识信息,释放所述当前房间的单例对象包括:
根据所述当前房间的标识信息,调用所述全局对象的获取函数,获取所述当前房间的单例对象信息;
构建释放函数,释放所述当前房间的单例对象信息。
8.一种解决房间串数据的装置,其特征在于,所述装置包括:
获取模块,用于当当前房间连接成功时,获取当前房间的标识信息和单例对象;
绑定缓存模块,用于以键值对的形式,绑定并缓存所述当前房间的标识信息和单例对象信息,所述键为标识信息,所述值为单例对象信息;
释放模块,用于当检测到切换所述当前房间的操作时,根据所述当前房间的标识信息,释放所述当前房间的单例对象。
9.一种终端,包括:存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至7任一项所述的解决房间串数据的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的解决房间串数据的方法。
CN201810948157.5A 2018-08-20 2018-08-20 解决房间串数据的方法、装置、终端及可读存储介质 Active CN109240773B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810948157.5A CN109240773B (zh) 2018-08-20 2018-08-20 解决房间串数据的方法、装置、终端及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810948157.5A CN109240773B (zh) 2018-08-20 2018-08-20 解决房间串数据的方法、装置、终端及可读存储介质

Publications (2)

Publication Number Publication Date
CN109240773A true CN109240773A (zh) 2019-01-18
CN109240773B CN109240773B (zh) 2022-08-16

Family

ID=65071794

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810948157.5A Active CN109240773B (zh) 2018-08-20 2018-08-20 解决房间串数据的方法、装置、终端及可读存储介质

Country Status (1)

Country Link
CN (1) CN109240773B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113110895A (zh) * 2021-03-19 2021-07-13 深圳震有科技股份有限公司 基于ipc置顶单例应用程序的方法、终端及存储介质
CN115567733A (zh) * 2022-11-15 2023-01-03 易方信息科技股份有限公司 基于sdk的直播间切换方法、装置、终端以及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110010690A1 (en) * 2009-07-07 2011-01-13 Howard Robert S System and Method of Automatically Transforming Serial Streaming Programs Into Parallel Streaming Programs
CN105843686A (zh) * 2016-03-29 2016-08-10 乐视控股(北京)有限公司 单例组件资源释放方法及装置
CN106604086A (zh) * 2016-12-08 2017-04-26 武汉斗鱼网络科技有限公司 安卓应用中预览视频的全屏播放方法及系统
CN106791898A (zh) * 2016-12-12 2017-05-31 广州华多网络科技有限公司 一种直播视频加载方法和装置
US9747341B2 (en) * 2013-06-06 2017-08-29 Oracle International Corporation System and method for providing a shareable global cache for use with a database environment
CN107291619A (zh) * 2017-06-21 2017-10-24 北京奇虎科技有限公司 内存占用分析方法及装置
CN108228300A (zh) * 2018-01-02 2018-06-29 武汉斗鱼网络科技有限公司 一种控制内容实时刷新的方法及装置
CN108366301A (zh) * 2018-04-24 2018-08-03 中国广播电视网络有限公司 一种基于Android的视频悬浮播放方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110010690A1 (en) * 2009-07-07 2011-01-13 Howard Robert S System and Method of Automatically Transforming Serial Streaming Programs Into Parallel Streaming Programs
US9747341B2 (en) * 2013-06-06 2017-08-29 Oracle International Corporation System and method for providing a shareable global cache for use with a database environment
CN105843686A (zh) * 2016-03-29 2016-08-10 乐视控股(北京)有限公司 单例组件资源释放方法及装置
CN106604086A (zh) * 2016-12-08 2017-04-26 武汉斗鱼网络科技有限公司 安卓应用中预览视频的全屏播放方法及系统
CN106791898A (zh) * 2016-12-12 2017-05-31 广州华多网络科技有限公司 一种直播视频加载方法和装置
CN107291619A (zh) * 2017-06-21 2017-10-24 北京奇虎科技有限公司 内存占用分析方法及装置
CN108228300A (zh) * 2018-01-02 2018-06-29 武汉斗鱼网络科技有限公司 一种控制内容实时刷新的方法及装置
CN108366301A (zh) * 2018-04-24 2018-08-03 中国广播电视网络有限公司 一种基于Android的视频悬浮播放方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113110895A (zh) * 2021-03-19 2021-07-13 深圳震有科技股份有限公司 基于ipc置顶单例应用程序的方法、终端及存储介质
CN115567733A (zh) * 2022-11-15 2023-01-03 易方信息科技股份有限公司 基于sdk的直播间切换方法、装置、终端以及存储介质
CN115567733B (zh) * 2022-11-15 2023-02-07 易方信息科技股份有限公司 基于sdk的直播间切换方法、装置、终端以及存储介质

Also Published As

Publication number Publication date
CN109240773B (zh) 2022-08-16

Similar Documents

Publication Publication Date Title
CN106528791B (zh) 一种推送通知消息的方法及装置
CN105183495B (zh) 跨操作系统域来协调活动视图
CN105808633A (zh) 数据归档方法和系统
CN104615662B (zh) 一种处理数据的方法、装置及终端设备
CN110380860B (zh) 基于区块链智能合约的共有资源数据处理方法和设备
US20070143335A1 (en) Partition-based undo of partitioned object graph
CN108829753A (zh) 一种信息处理方法及装置
CN111190727A (zh) 内存的异步析构方法、装置、计算机设备及存储介质
US9766929B2 (en) Processing of data stream collection record sequence
CN104281488A (zh) 服务器引擎的实现方法和系统
US20160306856A1 (en) Lockless open collection data structure
CN109768962B (zh) 防火墙策略生成方法、装置、计算机设备及存储介质
CN109240773A (zh) 解决房间串数据的方法、装置、终端及可读存储介质
US20100100494A1 (en) Determination of paths between entities in a multi-relationship social network
CN110598419A (zh) 一种区块链客户端漏洞挖掘方法、装置、设备及存储介质
CN116719646A (zh) 热点数据处理方法、装置、电子装置和存储介质
JP2005182787A (ja) 複数のローカリティによるキー・キャッシュ管理
CN108241671B (zh) 业务处理方法和系统及存储介质
CN114493598A (zh) 计算资源管理方法、装置、计算机设备和存储介质
CN109710278A (zh) 一种卸载应用程序的方法、装置及终端设备
CN108563578A (zh) Sdk兼容性检测方法、装置、设备及可读存储介质
US9418175B2 (en) Enumeration of a concurrent data structure
CN115437798A (zh) 共享内存的数据处理方法、装置、设备和介质
CN109495432A (zh) 一种匿名账户的鉴权方法及服务器
CN106934555B (zh) 工作流的组织方法及装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant