CN117745254A - 课程的生成方法、装置、计算机设备及可读存储介质 - Google Patents
课程的生成方法、装置、计算机设备及可读存储介质 Download PDFInfo
- Publication number
- CN117745254A CN117745254A CN202311666886.9A CN202311666886A CN117745254A CN 117745254 A CN117745254 A CN 117745254A CN 202311666886 A CN202311666886 A CN 202311666886A CN 117745254 A CN117745254 A CN 117745254A
- Authority
- CN
- China
- Prior art keywords
- target
- thread
- threads
- preset
- data 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 67
- 238000012545 processing Methods 0.000 claims abstract description 15
- 230000004044 response Effects 0.000 claims abstract description 9
- 230000015654 memory Effects 0.000 claims description 31
- 238000013507 mapping Methods 0.000 claims description 9
- 238000012163 sequencing technique Methods 0.000 claims description 4
- 238000012549 training Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000004580 weight loss Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及数据处理技术领域,公开了一种课程的生成方法、装置、计算机设备及可读存储介质。该方法包括:获取目标对象的数据信息以及服务器的预设线程数;其中,预设线程数用于表征服务器自身具备的线程数,服务器中配置有线程池;对数据信息进行分析处理,确定目标任务信息;基于预设线程数,确定目标线程数;响应于针对线程池的配置操作,基于配置操作以及目标线程数,向线程池配置目标线程数对应的多个目标线程;将数据信息存储于目标线程的存储空间;执行目标线程,生成数据信息对应的课程。本发明将数据信息存储于目标线程的存储空间,然后同时执行多个目标线程,生成数据信息对应的课程,能够有效地提高生成课程的效率。
Description
技术领域
本发明涉及数据处理技术领域,具体涉及一种课程的生成方法、装置、计算机设备及可读存储介质。
背景技术
常常有很多线上报名训练营,通过训练营上的课程提高用户的能力。目前,配置有课程的课程软件通常会在开始时对用户数据进行测评,然后根据用户实际数据给用户安排一个学期或者1-2个月等时间的课程安排,从而帮助用户能够明确某一个时间段要做哪些训练。
但是,如果课程的周期比较长,例如:超过90天以上的课程,课程软件要按照时间顺序一天天生成,导致课程生成时间较长,降低用户体验。
发明内容
有鉴于此,本发明提供了一种课程的生成方法、装置、计算机设备及可读存储介质,以解决如果课程的周期比较长,例如:超过90天以上的课程,课程软件要按照时间顺序一天天生成,导致课程生成时间较长,降低用户体验的问题。
第一方面,本发明提供了一种课程的生成方法,该方法包括:获取目标对象的数据信息以及服务器的预设线程数;其中,预设线程数用于表征服务器自身具备的线程数,服务器中配置有线程池;对数据信息进行分析处理,确定目标任务信息;基于预设线程数,确定目标线程数;响应于针对线程池的配置操作,基于配置操作以及目标线程数,向线程池配置目标线程数对应的多个目标线程;将数据信息存储于目标线程的存储空间;执行目标线程,生成数据信息对应的课程。
本实施例提供的课程的生成方法,服务器中配置线程池,并在线程池中配置目标线程数的目标线程,然后将数据信息存储于目标线程的存储空间,然后同时执行多个目标线程,生成数据信息对应的课程,相较于课程软件要按照时间顺序一天天生成的方式,本方法能够有效地提高生成课程的效率。
在一个可选的实施方式中,数据信息包括时间信息以及任务信息;其中,对数据信息进行分析处理,确定目标信息,包括:对时间信息进行分割,生成多个目标时间段;基于目标时间段、目标时间段以及任务信息的映射表,确定各个目标时间段对应的目标任务信息。
本实施例提供的课程的生成方法,将时间信息进行分割,生成多个目标时间段,然后通过目标时间段以及映射表,能够准确地确定每一个目标时间段对应的目标任务信息。
在一个可选的实施方式中,基于预设线程数,确定目标线程数,包括:基于预设线程数以及预设倍数,确定目标线程数。
本实施例提供的课程的生成方法,通过预设倍数确定目标线程数的方式,一方面能够提高生成课程的效率,另一方面如果遇到网络IO等待时,可以切换到其他目标线程执行,最大化利用服务器资源,减少等待占用服务器的时间。
在一个可选的实施方式中,在将数据信息存储于目标线程之前,还包括:响应于针对线程池的添加操作,基于添加操作向线程池配置线程锁;其中,线程锁用于记录目标线程的执行数量;检测线程锁的执行数量是否满足目标线程数;若执行数量满足目标线程数时,停止执行目标线程,生成数据信息对应的课程的步骤。
本实施例提供的课程的生成方法,通过设置线程锁的方式,能够明确各个目标线程是否已经生成完课程,若执行数量满足目标线程数时,停止执行目标线程,从而能够最大化利用服务器资源。
在一个可选的实施方式中,若执行数量不满足预设数量,基于线程锁对已经生成课程的目标线程进行锁定,直至执行数量满足预设数量时,开启线程锁。
本实施例提供的课程的生成方法,若执行数量不满足预设数量,基于线程锁对已经生成课程的目标线程进行锁定,使得该线程不会继续占用服务器资源,能够有效地提高生成课程的效率。
在一个可选的实施方式中,方法还包括:将已经生成课程存储于数组中;当执行数量满足预设数量时,按照课程的日期将课程进行排序,并将排序后的课程发送至前端进行展示。
本实施例提供的课程的生成方法,通过将生成的课程进行排序,并发送至前端进行展示的方式,能够使得用户明确了解各个时间段需要进行的任务。
在一个可选的实施方式中,将数据信息存储于目标线程的存储空间,包括:基于目标线程的数量,将目标任务信息按照预设的分配规则,存储于各个目标线程的存储空间。
本实施例提供的课程的生成方法,通过目标线程的数量以及预设的分配规则,能够将目标任务信息分配至各个目标线程,并将目标任务信息存储于对应目标线程的存储空间,能够有效地解决线程之间数据安全和隔离的问题。
第二方面,本发明提供了一种课程的生成装置,该装置包括:获取模块,用于获取目标对象的数据信息以及服务器的预设线程数;其中,预设线程数用于表征服务器自身具备的线程数,服务器中配置有线程池;处理模块,用于对数据信息进行分析处理,确定目标任务信息;确定模块,用于基于预设线程数,确定目标线程数;配置模块,用于响应于针对线程池的配置操作,基于配置操作以及目标线程数,向线程池配置目标线程数对应的多个目标线程;存储模块,用于将数据信息存储于目标线程的存储空间;生成模块,用于执行目标线程,生成数据信息对应的课程。
第三方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的课程的生成方法。
第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的课程的生成方法。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例的课程的生成方法的流程示意图;
图2是根据本发明实施例的另一课程的生成方法的流程示意图;
图3是根据本发明实施例的又一课程的生成方法的流程示意图;
图4是根据本发明实施例的课程的生成装置的结构框图;
图5是本发明实施例的计算机设备的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
基于相关技术可知,常常有很多线上报名训练营,通过训练营上的课程提高用户的能力。目前,配置有课程的课程软件通常会在开始时对用户数据进行测评,然后根据用户实际数据给用户安排一个学期或者1-2个月等时间的课程安排,从而帮助用户能够明确某一个时间段要做哪些训练。
但是,如果课程的周期比较长,例如:超过90天以上的课程,课程软件要按照时间顺序一天天生成,导致课程生成时间较长,降低用户体验。
基于此,本实施例提供的课程的生成方法,服务器中配置线程池,并在线程池中配置目标线程数的目标线程,然后将数据信息存储于目标线程的存储空间,然后同时执行多个目标线程,生成数据信息对应的课程,相较于课程软件要按照时间顺序一天天生成的方式,本方法能够有效地提高生成课程的效率。
根据本发明实施例,提供了一种课程的生成方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
在本实施例中提供了一种课程的生成方法,可用于计算机设备,如电脑、服务器等,图1是根据本发明实施例的课程的生成方法的流程示意图,如图1所示,该流程包括如下步骤:
步骤S101,获取目标对象的数据信息以及服务器的预设线程数;其中,预设线程数用于表征服务器自身具备的线程数,服务器中配置有线程池。
目标对象可以用于表征进行课程训练的用户。其中,目标对象可以为学生、各种职业的工作人员等,在此不做具体限定。
数据信息可以用于表征目标对象的训练需求。其中,数据信息可以包括时间信息和任务信息,例如:三个月减肥10斤;再例如:6个月学习初中课程等,在此不做具体限定。具体地,数据信息可以通过调查问卷的方式得到,也可以通过用户在服务器上填写的方式得到,在此不做具体限定。
预设线程数是指在一个计算机程序或进程中同时执行的线程(Thread)的数量。线程是操作系统能够进行调度的最小单位,它是一个轻量级的执行单元,用于执行程序中的指令。一个程序可以包含一个或多个线程,线程之间可以并行执行,从而提高程序的性能和响应能力。其中,预设线程数可以为5个、10等,可以由服务器的类型决定,在此不做具体限定。
线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务。线程池线程都是后台线程。每个线程都使用默认的堆栈大小,以默认的优先级运行,并处于多线程单元中。如果某个线程在托管代码中空闲(如正在等待某个事件),则线程池将插入另一个辅助线程来使所有处理器保持繁忙。如果所有线程池线程都始终保持繁忙,但队列中包含挂起的工作,则线程池将在一段时间后创建另一个辅助线程但线程的数目永远不会超过最大值。超过最大值的线程可以排队,但他们要等到其他线程完成后才启动。具体地,可以在服务器中建立线程池。
步骤S102,对数据信息进行分析处理,确定目标任务信息。
目标任务信息可以用于表征目标对象每日的训练目标。其中,目标任务信息可以为4天减肥两斤,也可以为5天减肥3斤等,在此不做具体限定。具体地,可以通过对数据信息进行分析,确定目标任务信息。例如:数据信息为三个月减肥10斤,那么对应的目标任务信息可以为前10天减肥2斤,后20天减肥8斤等,在此不做具体限定。
步骤S103,基于预设线程数,确定目标线程数。
目标线程数可以用于表征执行数据信息的线程数。其中,目标线程数大于预设线程数,其数量可以为20个、30个等,可由预设线程数决定,在此不做具体限定。具体地,可以通过服务器自身具有的预设线程数,确定线程池的目标线程数。
步骤S104,响应于针对线程池的配置操作,基于配置操作以及目标线程数,向线程池配置目标线程数对应的多个目标线程。
配置操作可以作为用户通过鼠标点击、键盘选择或者触屏所产生的操作。在用户针对线程池发出配置操作时,相应地,计算机设备可以响应用户针对线程池的配置操作,通过目标线程数向线程池配置目标线程数对应的多个目标线程。
步骤S105,将数据信息存储于目标线程的存储空间。
存储空间用于表征目标线程内的本地线程。其可以用于存储数据信息,在目标线程进行处理时,通过存储空间再将数据信息调用出来。
步骤S106,执行目标线程,生成数据信息对应的课程。
课程可以用于表征目标对象的训练课程。具体地,在执行目标线程时,可以从对应的目标线程的存储空间中调用数据信息,并生成对应的课程。
本实施例提供的课程的生成方法,服务器中配置线程池,并在线程池中配置目标线程数的目标线程,然后将数据信息存储于目标线程的存储空间,然后同时执行多个目标线程,生成数据信息对应的课程,相较于课程软件要按照时间顺序一天天生成的方式,本方法能够有效地提高生成课程的效率。
在本实施例中提供了一种课程的生成方法,可用于上述的计算机设备,如电脑、服务器等,图2是根据本发明实施例的课程的生成方法的流程示意图,如图2所示,该流程包括如下步骤:
步骤S201,获取目标对象的数据信息以及服务器的预设线程数;其中,预设线程数用于表征服务器自身具备的线程数,服务器中配置有线程池。详细请参见图1所示实施例的步骤S101,在此不再赘述。
步骤S202,对数据信息进行分析处理,确定目标任务信息。
具体地,数据信息包括时间信息以及任务信息;上述步骤S202包括:
步骤S2021,对时间信息进行分割,生成多个目标时间段。
时间信息可以用于表征目标对象的训练时间。其中,时间信息可以为一个具体的数据,例如:1个月、3个月等,也可以为一个范围值,例如:1~2个月,2~3个月等,在此不做具体限定。具体地,时间信息可以为用户通过鼠标点击、键盘点击或触摸屏幕等方式得到,也可以为通过调查问卷的方式得到,在此不做具体限定。目标时间段可以为每一天。例如:时间信息为30天,那么对应的目标时间段的数量为30个。
步骤S2022,基于目标时间段、目标时间段以及任务信息的映射表,确定各个目标时间段对应的目标任务信息。
映射表可以用于表征目标时间段以及任务信息的映射关系。例如:目标时间段的数量为10个时,对应的任务信息可以为第一个时间段处理A任务,第二个时间段处理B任务···第十个时间段处理j任务。其中,A任务、B任务···以及J任务合并为任务信息。具体地,映射表可以预先配置在服务器内,可以通过大量数据进行模型训练得到的,其中,目标时间段可以作为模型的输入,任务信息可以作为模型的输出。因此,在输入目标时间段之后,可以自动生成各个目标时间段对应的目标任务信息。
步骤S203,基于预设线程数,确定目标线程数。
具体地,上述步骤S203包括:
步骤S2031,获取预设倍数。
预设倍数可以用于表征预设线程数的倍数。其中,预设倍数可以为2倍、3倍等,可以由服务器的类型进行决定,在此不做具体限定。具体地,预设倍数可以为用户预先在服务器中配置的倍数。优选的,预设倍数可以为2倍。
步骤S2032,基于预设线程数以及预设倍数,确定目标线程数。
目标线程数可以用于表征目标线程的数量。其中,目标线程数可以为20条、30条等,可以由预设倍数以及预设线程数确定,在此不做具体限定。例如:预设线程数为10条,预设倍数为2倍,对应的目标线程数为20条。
步骤S204,响应于针对线程池的配置操作,基于配置操作以及目标线程数,向线程池配置目标线程数对应的多个目标线程。详细请参见图1所示实施例的步骤S14,在此不再赘述。
步骤S205,将数据信息存储于目标线程的存储空间。详细请参见图1所示实施例的步骤S105,在此不再赘述。
步骤S206,执行目标线程,生成数据信息对应的课程。详细请参见图1所示实施例的步骤S106,在此不再赘述。
本实施例提供的课程的生成方法,将时间信息进行分割,生成多个目标时间段,然后通过目标时间段以及映射表,能够准确地确定每一个目标时间段对应的目标任务信息。
此外,通过预设倍数确定目标线程数的方式,一方面能够提高生成课程的效率,另一方面如果遇到网络IO等待时,可以切换到其他目标线程执行,最大化利用服务器资源,减少等待占用服务器的时间。
在一个可选的实施方式中,上述方法还包括:
步骤a1,响应于针对线程池的添加操作,基于添加操作向线程池配置线程锁;其中,线程锁用于记录目标线程的执行数量。
添加操作可以作为用户通过鼠标点击、键盘选择或者触屏所产生的操作。在用户针对线程池发出添加操作时,相应地,计算机设备可以响应用户针对线程池的添加操作,向线程池配置线程锁;其中,线程锁用于记录目标线程的执行数量。
步骤a2,检测线程锁的执行数量是否满足目标线程数。
步骤a3,若执行数量满足目标线程数时,停止执行目标线程,生成数据信息对应的课程的步骤。
步骤a4,若执行数量不满足预设数量,基于线程锁对已经生成课程的目标线程进行锁定,直至执行数量满足预设数量时,开启线程锁。
在目标线程执行时,任意一个目标线程执行完成,也即生成对应的课程之后,线程锁的执行数量会增加一个,对应的线程锁会锁定生成课程的目标线程,直至所有的目标线程均生成完课程之后,线程锁才会开启。
优选的,目标线程执行时,任意一个目标线程执行完成时,对应的线程锁的执行数量会减少一个,直至线程锁的执行数量为零时,线程锁才会开启。
本实施例提供的课程的生成方法,通过设置线程锁的方式,能够明确各个目标线程是否已经生成完课程,若执行数量满足目标线程数时,停止执行目标线程,从而能够最大化利用服务器资源。
此外,若执行数量不满足预设数量,基于线程锁对已经生成课程的目标线程进行锁定,使得该线程不会继续占用服务器资源,能够有效地提高生成课程的效率。
在一个可选的实施方式中,上述方法还包括:
步骤c1,将已经生成课程存储于数组中。
数组可以用于表征服务器的存储器。具体地,在执行目标线程的过程中,如果目标线程生成完课程之后,将课程存储至数组中。例如:目标线程A、目标线程B以及目标线程C,当目标线程A生成完课程之后,可以将目标线程A中的课程存储至数组中,当目标线程B生成完课程之后,可以将目标线程B中的课程存储至数组中,依次类推,将所有的目标线程生成的课程存储至数组中。
步骤c2,当执行数量满足预设数量时,按照课程的日期将课程进行排序,并将排序后的课程发送至前端进行展示。
前端又称web前端。其中,前端就是网站的前台部分,运行在PC端、移动端等浏览器上展现给用户浏览的网页。当所有的目标线程均生成完课程之后,按照课程的日期将课程进行排序,并将排序后的课程发送至前端进行展示。其中,日期可以为目标时间段的顺序。例如:目标时间段包括:5天,也即第一天、第二天、第三天、第四天以及第五天,对应的日期可以为2023.11.20、2023.11.21、2023.11.22、2023.11.23以及2023.11.24。
本实施例提供的课程的生成方法,通过将生成的课程进行排序,并发送至前端进行展示的方式,能够使得用户明确了解各个时间段需要进行的任务。
在一个可选的实施方式中,上述步骤S205包括:基于目标线程的数量,将目标任务信息按照预设的分配规则,存储于各个目标线程的存储空间。
预设的分配规则可以用于表征目标任务信息的分配情况。具体地,根据目标线程的数量,将目标任务信息合理地分配到目标线程的存储空间内。例如:多个目标任务信息依次为减少2斤、减少6斤、减少3斤,目标线程的数量为4个,预设的分配规则可以为将减少2斤和减少3斤分配给第一个目标线程以及第二个目标线程,将减少6斤分配给剩余两个目标线程。
本实施例提供的课程的生成方法,通过目标线程的数量以及预设的分配规则,能够将目标任务信息分配至各个目标线程,并将目标任务信息存储于对应目标线程的存储空间,能够有效地解决线程之间数据安全和隔离的问题。
图3示出了一种课程的生成方法的流程示意图,如图3所示,在一个可选的实施方式中,课程的生成方法包括:
步骤S1,开始。
步骤S2,获取用户的数据信息,对数据信息进行分析,将用户要达成的目标按照课程周期时间平均分配到每日,生成每日目标。
步骤S3,获取服务器(Central-Processing-Unit,CPU)的核心线程数。
步骤S4,创建线程池,设置线程池的核心线程数为服务器的核心线程数×2。
步骤S5,设置课程周期天数。
步骤S6,将每日目标和用户的数据信息存储到对应的线程池的核心线程中。
步骤S7,执行核心线程,生成核心线程对应的课程,并将课程存储至数组中;其中,每当一个核心线程生成课程之后,线程锁的数量减一。
步骤S8,当线程锁的数量为零时,课程生成完毕。
步骤S9,将课程按照日期排序,返回前端。
步骤S10,结束。
本实施例提供的课程的生成方法,服务器中配置线程池,并在线程池中配置目标线程数的目标线程,然后将数据信息存储于目标线程的存储空间,然后同时执行多个目标线程,生成数据信息对应的课程,相较于课程软件要按照时间顺序一天天生成的方式,本方法能够有效地提高生成课程的效率。
此外,通过目标线程的数量以及预设的分配规则,能够将目标任务信息分配至各个目标线程,并将目标任务信息存储于对应目标线程的存储空间,能够有效地解决线程之间数据安全和隔离的问题。
在本实施例中还提供了一种课程的生成装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
本实施例提供一种课程的生成装置,如图4所示,包括:
获取模块401,用于获取目标对象的数据信息以及服务器的预设线程数;其中,预设线程数用于表征服务器自身具备的线程数,服务器中配置有线程池;处理模块402,用于对数据信息进行分析处理,确定目标任务信息;确定模块403,用于基于预设线程数,确定目标线程数;配置模块404,用于响应于针对线程池的配置操作,基于配置操作以及目标线程数,向线程池配置目标线程数对应的多个目标线程;存储模块405,用于将数据信息存储于目标线程的存储空间;生成模块406,用于执行目标线程,生成数据信息对应的课程。
在一些可选的实施方式中,数据信息包括时间信息以及任务信息;其中,处理模块402包括:分割单元,用于对时间信息进行分割,生成多个目标时间段,第一确定单元,用于基于目标时间段、目标时间段以及任务信息的映射表,确定各个目标时间段对应的目标任务信息。
在一些可选的实施方式中,确定模块403包括:获取单元,用于获取预设倍数;第二确定单元,用于基于预设线程数以及预设倍数,确定目标线程数。
在一些可选的实施方式中,装置还包括:添加模块,用于响应于针对线程池的添加操作,基于添加操作向线程池配置线程锁;其中,线程锁用于记录目标线程的执行数量;检测模块,用于检测线程锁的执行数量是否满足目标线程数;停止模块,用于若执行数量满足目标线程数时,停止执行目标线程,生成数据信息对应的课程的步骤。
在一些可选的实施方式中,装置还包括:开启模块,用于若执行数量不满足预设数量,基于线程锁对已经生成课程的目标线程进行锁定,直至执行数量满足预设数量时,开启线程锁。
在一些可选的实施方式中,装置还包括:课程存储模块,用于将已经生成课程存储于数组中;排序展示模块,用于当执行数量满足预设数量时,按照课程的日期将课程进行排序,并将排序后的课程发送至前端进行展示。
在一些可选的实施方式中,存储模块405,用于基于目标线程的数量,将目标任务信息按照预设的分配规则,存储于各个目标线程的存储空间。
上述各个模块和单元的更进一步的功能描述与上述对应实施例相同,在此不再赘述。
本实施例中的课程的生成装置是以功能单元的形式来呈现,这里的功能单元是指ASIC(Application Specific Integrated Circuit,专用集成电路)电路,执行一个或多个软件或固定程序的处理器和存储器,和/或其他可以提供上述功能的器件。
本发明实施例还提供一种计算机设备,具有上述图5所示的课程的生成装置。
请参阅图5,图5是本发明可选实施例提供的一种计算机设备的结构示意图,如图5所示,该计算机设备包括:一个或多个处理器10、存储器20,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相通信连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在计算机设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在一些可选的实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个计算机设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图5中以一个处理器10为例。
处理器10可以是中央处理器,网络处理器或其组合。其中,处理器10还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路,可编程逻辑器件或其组合。上述可编程逻辑器件可以是复杂可编程逻辑器件,现场可编程逻辑门阵列,通用阵列逻辑或其任意组合。
其中,存储器20存储有可由至少一个处理器10执行的指令,以使至少一个处理器10执行实现上述实施例示出的方法。
存储器20可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据计算机设备的使用所创建的数据等。此外,存储器20可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些可选的实施方式中,存储器20可选包括相对于处理器10远程设置的存储器,这些远程存储器可以通过网络连接至该计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器20可以包括易失性存储器,例如,随机存取存储器;存储器也可以包括非易失性存储器,例如,快闪存储器,硬盘或固态硬盘;存储器20还可以包括上述种类的存储器的组合。
该计算机设备还包括通信接口30,用于该计算机设备与其他设备或通信网络通信。
本发明实施例还提供了一种计算机可读存储介质,上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可记录在存储介质,或者被实现通过网络下载的原始存储在远程存储介质或非暂时机器可读存储介质中并将被存储在本地存储介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件的存储介质上的这样的软件处理。其中,存储介质可为磁碟、光盘、只读存储记忆体、随机存储记忆体、快闪存储器、硬盘或固态硬盘等;进一步地,存储介质还可以包括上述种类的存储器的组合。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件,当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现上述实施例示出的方法。
虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (10)
1.一种课程的生成方法,其特征在于,包括:
获取目标对象的数据信息以及服务器的预设线程数;其中,所述预设线程数用于表征所述服务器自身具备的线程数,所述服务器中配置有线程池;
对所述数据信息进行分析处理,确定目标任务信息;
基于所述预设线程数,确定目标线程数;
响应于针对所述线程池的配置操作,基于所述配置操作以及目标线程数,向所述线程池配置所述目标线程数对应的多个目标线程;
将所述数据信息存储于所述目标线程的存储空间;
执行所述目标线程,生成所述数据信息对应的课程。
2.根据权利要求1所述的课程的生成方法,其特征在于,所述数据信息包括时间信息以及任务信息;其中,所述对所述数据信息进行分析处理,确定目标信息,包括:
对所述时间信息进行分割,生成多个目标时间段;
基于所述目标时间段、所述目标时间段以及所述任务信息的映射表,确定各个所述目标时间段对应的目标任务信息。
3.根据权利要求1所述的课程的生成方法,其特征在于,所述基于所述预设线程数,确定目标线程数,包括:
获取预设倍数;
基于所述预设线程数以及预设倍数,确定所述目标线程数。
4.根据权利要求2所述的课程的生成方法,其特征在于,在所述将所述数据信息存储于所述目标线程之前,还包括:
响应于针对所述线程池的添加操作,基于所述添加操作向所述线程池配置线程锁;其中,所述线程锁用于记录所述目标线程的执行数量;
检测所述线程锁的所述执行数量是否满足所述目标线程数;
若所述执行数量满足所述目标线程数时,停止执行所述目标线程,生成所述数据信息对应的课程的步骤。
5.根据权利要求4所述的课程的生成方法,其特征在于,还包括:
若所述执行数量不满足预设数量,基于所述线程锁对已经生成课程的目标线程进行锁定,直至所述执行数量满足预设数量时,开启所述线程锁。
6.根据权利要求5所述的课程的生成方法,其特征在于,还包括:
将已经生成课程存储于数组中;
当所述执行数量满足预设数量时,按照所述课程的日期将所述课程进行排序,并将排序后的课程发送至前端进行展示。
7.根据权利要求2所述的课程的生成方法,其特征在于,所述将所述数据信息存储于所述目标线程的存储空间,包括:
基于所述目标线程的数量,将所述目标任务信息按照预设的分配规则,存储于各个所述目标线程的存储空间。
8.一种课程的生成装置,其特征在于,所述装置包括:
获取模块,用于获取目标对象的数据信息以及服务器的预设线程数;其中,所述预设线程数用于表征所述服务器自身具备的线程数,所述服务器中配置有线程池;
处理模块,用于对所述数据信息进行分析处理,确定目标任务信息;
确定模块,用于基于所述预设线程数,确定目标线程数;
配置模块,用于响应于针对所述线程池的配置操作,基于所述配置操作以及目标线程数,向所述线程池配置所述目标线程数对应的多个目标线程;
存储模块,用于将所述数据信息存储于所述目标线程的存储空间;
生成模块,用于执行所述目标线程,生成所述数据信息对应的课程。
9.一种计算机设备,其特征在于,包括:
存储器和处理器,所述存储器和所述处理器之间互相通信连接,所述存储器中存储有计算机指令,所述处理器通过执行所述计算机指令,从而执行权利要求1至7中任一项所述的课程的生成方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机指令,所述计算机指令用于使计算机执行权利要求1至7中任一项所述的课程的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311666886.9A CN117745254A (zh) | 2023-12-06 | 2023-12-06 | 课程的生成方法、装置、计算机设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311666886.9A CN117745254A (zh) | 2023-12-06 | 2023-12-06 | 课程的生成方法、装置、计算机设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117745254A true CN117745254A (zh) | 2024-03-22 |
Family
ID=90280514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311666886.9A Pending CN117745254A (zh) | 2023-12-06 | 2023-12-06 | 课程的生成方法、装置、计算机设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117745254A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109753354A (zh) * | 2018-11-26 | 2019-05-14 | 平安科技(深圳)有限公司 | 基于多线程的流媒体任务的处理方法、装置及计算机设备 |
CN112035255A (zh) * | 2020-08-28 | 2020-12-04 | 北京浪潮数据技术有限公司 | 线程池资源管理任务处理方法、装置、设备及存储介质 |
CN113157410A (zh) * | 2021-03-30 | 2021-07-23 | 北京大米科技有限公司 | 线程池调节方法、装置、存储介质及电子设备 |
CN114741405A (zh) * | 2022-02-17 | 2022-07-12 | 深圳壹账通智能科技有限公司 | Excel数据表导出方法、装置、设备及存储介质 |
CN115168012A (zh) * | 2022-07-27 | 2022-10-11 | 深圳微众信用科技股份有限公司 | 一种线程池并发线程数确定方法及相关产品 |
CN116166435A (zh) * | 2023-02-28 | 2023-05-26 | 马上消费金融股份有限公司 | 基于线程的任务处理方法及装置、电子设备、存储介质 |
CN116243868A (zh) * | 2023-03-10 | 2023-06-09 | 郑州云海信息技术有限公司 | 一种任务的处理方法、装置、设备和计算机可读存储介质 |
CN117149414A (zh) * | 2023-08-15 | 2023-12-01 | 深圳市六度人和科技有限公司 | 一种任务处理方法、装置、电子设备及可读存储介质 |
-
2023
- 2023-12-06 CN CN202311666886.9A patent/CN117745254A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109753354A (zh) * | 2018-11-26 | 2019-05-14 | 平安科技(深圳)有限公司 | 基于多线程的流媒体任务的处理方法、装置及计算机设备 |
CN112035255A (zh) * | 2020-08-28 | 2020-12-04 | 北京浪潮数据技术有限公司 | 线程池资源管理任务处理方法、装置、设备及存储介质 |
CN113157410A (zh) * | 2021-03-30 | 2021-07-23 | 北京大米科技有限公司 | 线程池调节方法、装置、存储介质及电子设备 |
CN114741405A (zh) * | 2022-02-17 | 2022-07-12 | 深圳壹账通智能科技有限公司 | Excel数据表导出方法、装置、设备及存储介质 |
CN115168012A (zh) * | 2022-07-27 | 2022-10-11 | 深圳微众信用科技股份有限公司 | 一种线程池并发线程数确定方法及相关产品 |
CN116166435A (zh) * | 2023-02-28 | 2023-05-26 | 马上消费金融股份有限公司 | 基于线程的任务处理方法及装置、电子设备、存储介质 |
CN116243868A (zh) * | 2023-03-10 | 2023-06-09 | 郑州云海信息技术有限公司 | 一种任务的处理方法、装置、设备和计算机可读存储介质 |
CN117149414A (zh) * | 2023-08-15 | 2023-12-01 | 深圳市六度人和科技有限公司 | 一种任务处理方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110795219A (zh) | 适用于多种计算框架的资源调度方法及系统 | |
DE112010005705T5 (de) | Umplanen von Workload in einer hybriden Datenverarbeitungsumgebung | |
CN113515382B (zh) | 云资源的分配方法、装置、电子设备及存储介质 | |
CN111104210A (zh) | 一种任务处理方法、装置及计算机系统 | |
CN103885826B (zh) | 一种多核嵌入式系统实时任务调度实现方法 | |
CN113157379A (zh) | 集群节点资源调度方法及装置 | |
CN114341847A (zh) | 对容器的外部操作与突变事件的对应关系 | |
CN105868070A (zh) | 确定任务消耗资源的方法及装置 | |
DE112017006367T5 (de) | Aufgabenmanagement mit dynamischer Laufzeit | |
CN115185496A (zh) | 一种基于Flowable工作流引擎的业务编排方法 | |
DE112021005927T5 (de) | Patchen von arbeitsabläufen | |
DE112012004468B4 (de) | Anwendungs-Level-Spekulative-Verarbeitung | |
CN116962532A (zh) | 集群任务调度方法、装置、计算机设备及存储介质 | |
CN117745254A (zh) | 课程的生成方法、装置、计算机设备及可读存储介质 | |
CN110825461B (zh) | 数据处理方法和装置 | |
Babuji et al. | A secure data enclave and analytics platform for social scientists | |
CN115576843A (zh) | 软件质量管理相关数据可视化展示方法及装置 | |
EP3343370A1 (en) | Method of processing opencl kernel and computing device therefor | |
CN104731900A (zh) | 一种Hive调度方法及装置 | |
CN114492051A (zh) | 数字化车间动态重构方法、装置、设备和存储介质 | |
Alam | Automatic seating arrangement tool for examinations in universities/colleges | |
CN111062681B (zh) | 选课巡检方法、装置、服务器及存储介质 | |
Igna et al. | Verification of printer datapaths using timed automata | |
Kuchař et al. | Automatic allocation of resources in software process simulations using their capability and productivity | |
CN112130977A (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 |