US10679321B2ActiveUtilityA1

Efficient release of target memory

Assignee: ALIBABA GROUP HOLDING LTDPriority: Mar 10, 2016Filed: Sep 5, 2018Granted: Jun 9, 2020
Est. expiryMar 10, 2036(~9.6 yrs left)· nominal 20-yr term from priority
Inventors:Chong Zhang
G06F 9/451G09G 2360/12G06T 1/60G06F 12/023
47
PatentIndex Score
0
Cited by
18
References
18
Claims

Abstract

A method for processing images, including: determining, subsequent to transmitting content of a target image corresponding to a current processing request to a processor, whether the target image is being used by other processing requests; and in response to the determination that the target image is not being used by the other processing requests, releasing memory utilized by the target image at a target memory, the target memory being used to store a copy corresponding to the target image.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A method for processing images, comprising:
 in response to receiving a current processing request corresponding to a target image, determining whether a unique identifier corresponding to the target image is present in a collection of identifiers, wherein the unique identifier is generated based at least in part on the target image and different target images correspond to different unique identifiers, wherein the current processing request corresponds to a request by a current application of the target image; 
 in response to a determination that the unique identifier is not present in the collection of identifiers, adding the unique identifier to the collection of identifiers; 
 updating an appearance times of the unique identifier to a first pre-configured value; 
 in response to a determination that content of the target image has been successfully transmitted to a processor, decreasing the appearance times of the unique identifier by a pre-configured amount; 
 determining whether the target image is being used by other processing requests using the appearance times of the unique identifier corresponding to the target image; 
 in response to a determination that the appearance times of the unique identifier is a second pre-configured value, determining that the target image is not currently being used by the other processing requests; and 
 in response to the determination that the target image is not being used by the other processing requests, releasing memory utilized by the target image at a target memory regardless of whether or not execution of the current application has ended, the target memory being used to store a copy corresponding to the target image. 
 
     
     
       2. The method of  claim 1 , wherein the pre-configured amount is a first pre-configured amount, further comprising updating a number of times the target image is being used by:
 recording, when the target image is being used by the current processing request, the number of times the target image is being used; and 
 decreasing, subsequent to the content of the target image corresponding to the current processing request being successfully transmitted to the processor, the number of times the target image is being used by a second pre-configured amount. 
 
     
     
       3. The method of  claim 1 , further comprising updating a number of times the target image is being used by:
 in response to a determination that the unique identifier is present in the collection of identifiers, increasing the appearance times of the unique identifier by the pre-configured amount; 
 setting the appearance times of the unique identifier as the number of times the target image is being used; and 
 decreasing the appearance times of the unique identifier by the pre-configured amount after the content of the target image corresponding to the current processing request is transmitted successfully to the processor. 
 
     
     
       4. The method of  claim 1 , wherein the determining of whether the target image is currently being used by the other processing requests further comprises:
 determining whether there is a pre-configured indicator associated with the target image; and 
 in response to the determination that there is the pre-configured indicator associated with the target image, determining that the target image is not currently being used by the other processing requests. 
 
     
     
       5. The method of  claim 1 , further comprising:
 determining, before obtaining the content of the target image, whether the copy corresponding to the target image is present at the target memory utilized by the target image; and 
 in response to the determination that the copy corresponding to the target image is not present at the target memory, loading the target image into the target memory. 
 
     
     
       6. The method of  claim 1 , further comprising:
 determining, before obtaining the content of the target image, whether the copy corresponding to the target image is present at the target memory utilized by the target image; 
 determining, in response to the determination that the copy corresponding to the target image is not present at the target memory, whether an identifier of the target memory, and/or the current processing request meets one or more pre-configured conditions; and 
 in response to the determination that the identifier of the target memory and/or the current processing request meets the one or more pre-configured conditions, loading the target image into the target memory. 
 
     
     
       7. A system, comprising:
 one or more processors configured to:
 in response to receiving a current processing request corresponding to a target image, determine whether a unique identifier corresponding to the target image is present in a collection of identifiers, wherein the unique identifier is generated based at least in part on the target image and different target images correspond to different unique identifiers, wherein the current processing request corresponds to a request by a current application of the target image; 
 in response to a determination that the unique identifier is not present in the collection of identifiers, add the unique identifier to the collection of identifiers; 
 update an appearance times of the unique identifier to a first pre-configured value; 
 in response to a determination that content of the target image has been successfully transmitted to another processor, decrease the appearance times of the unique identifier by a pre-configured amount; 
 determine whether the target image is being used by other processing requests using the appearance times of the unique identifier corresponding to the target image; 
 in response to a determination that the appearance times of the unique identifier is a second pre-configured value, determine that the target image is not currently being used by the other processing requests; and 
 in response to the determination that the target image is not being used by the other processing requests, release memory utilized by the target image at a target memory regardless of whether or not execution of the current application has ended, the target memory being used to store a copy corresponding to the target image; and 
 
 one or more memories coupled to the one or more processors, configured to provide the one or more processors with instructions. 
 
     
     
       8. The system of  claim 7 , wherein the pre-configured amount is a first pre-configured amount, wherein the one or more processors are further configured to update a number of times the target image is being used by:
 recording, when the target image is being used by the current processing request, the number of times the target image is being used; and 
 decreasing, subsequent to the content of the target image corresponding to the current processing request being successfully transmitted to the processor, the number of times the target image is being used by a second pre-configured amount. 
 
     
     
       9. The system of  claim 7 , wherein the one or more processors are further configured to update a number of times the target image is being used by:
 in response to a determination that the unique identifier is present in the collection of identifiers, increasing the appearance times of the unique identifier by the pre-configured amount; 
 setting the appearance times of the unique identifier as the number of times the target image is being used; and 
 decreasing the appearance times of the unique identifier by the pre-configured amount after the content of the target image corresponding to the current processing request is transmitted successfully to the processor. 
 
     
     
       10. The system of  claim 7 , wherein to determine whether the target image is currently being used by the other processing requests further comprises to:
 determine whether there is a pre-configured indicator associated with the target image; and 
 in response to the determination that there is the pre-configured indicator associated with the target image, determine that the target image is not currently being used by the other processing requests. 
 
     
     
       11. The system of  claim 7 , wherein the one or more processors are further configured to:
 determine, before obtaining the content of the target image, whether the copy corresponding to the target image is present at the target memory utilized by the target image; and 
 in response to the determination that the copy corresponding to the target image is not present at the target memory, load the target image into the target memory. 
 
     
     
       12. The system of  claim 7 , wherein the one or more processors are further configured to:
 determine, before obtaining the content of the target image, whether the copy corresponding to the target image is present at the target memory utilized by the target image; 
 determine, in response to the determination that the copy corresponding to the target image is not present at the target memory, whether an identifier of the target memory and/or the current processing request meets one or more pre-configured conditions; and 
 in response to the determination that the identifier of the target memory and/or the current processing request meets the one or more pre-configured conditions, load the target image into the target memory. 
 
     
     
       13. A computer program product, the computer program product being embodied in a tangible computer readable storage medium and comprising computer executable instruction, which, when implemented by a computer, cause the computer to perform the steps of:
 in response to receiving a current processing request corresponding to a target image, determining whether a unique identifier corresponding to the target image is present in a collection of identifiers, wherein the unique identifier is generated based at least in part on the target image and different target images correspond to different unique identifiers, wherein the current processing request corresponds to a request by a current application of the target image; 
 in response to a determination that the unique identifier is not present in the collection of identifiers, adding the unique identifier to the collection of identifiers; 
 updating an appearance times of the unique identifier to a first pre-configured value; 
 in response to a determination that content of the target image has been successfully transmitted to a processor, decreasing the appearance times of the unique identifier by a pre-configured amount; 
 determining whether the target image is being used by other processing requests using the appearance times of the unique identifier corresponding to the target image; 
 in response to a determination that the appearance times of the unique identifier is being used by other processing requests is a second pre-configured value, determining that the target image is not currently being used by the other processing requests; and 
 in response to the determination that the target image is not being used by the other processing requests, releasing memory utilized by the target image at a target memory regardless of whether or not execution of the current application has ended, the target memory being used to store a copy corresponding to the target image. 
 
     
     
       14. The computer program product of  claim 13 , wherein the pre-configured amount is a first pre-configured amount, further comprising computer executable instruction, which, when implemented by the computer, cause the computer to perform the steps of updating a number of times the target image is being used by:
 recording, when the target image is being used by the current processing request, the number of times the target image is being used; and 
 decreasing, subsequent to the content of the target image corresponding to the current processing request being successfully transmitted to the processor, the number of times the target image is being used by a second pre-configured amount. 
 
     
     
       15. The computer program product of  claim 13 , further comprising computer executable instruction, which, when implemented by the computer, cause the computer to perform the steps of updating a number of times the target image is being used by:
 in response to a determination that the unique identifier is present in the collection of identifiers, increasing the appearance times of the unique identifier by the pre-configured amount; 
 setting the appearance times of the unique identifier as the number of times the target image is being used; and 
 decreasing the appearance times of the unique identifier by the pre-configured amount after the content of the target image corresponding to the current processing request is transmitted successfully to the processor. 
 
     
     
       16. The computer program product of  claim 13 , wherein the determining of whether the target image is currently being used by the other processing requests further comprises:
 determining whether there is a pre-configured indicator associated with the target image; and 
 in response to the determination that there is the pre-configured indicator associated with the target image, determining that the target image is not currently being used by the other processing requests. 
 
     
     
       17. The computer program product of  claim 13 , further comprising computer executable instruction, which, when implemented by a computer, cause the computer to perform the steps of:
 determining, before obtaining the content of the target image, whether the copy corresponding to the target image is present at the target memory utilized by the target image; and 
 in response to the determination that the copy corresponding to the target image is not present at the target memory, loading the target image into the target memory. 
 
     
     
       18. The computer program product of  claim 13 , further comprising computer executable instruction, which, when implemented by the computer, cause the computer to perform the steps of:
 determining, before obtaining the content of the target image, whether the copy corresponding to the target image is present at the target memory utilized by the target image; 
 determining, in response to the determination that the copy corresponding to the target image is not present at the target memory, whether an identifier of the target memory, and/or the current processing request meets one or more pre-configured conditions; and 
 in response to the determination that the identifier of the target memory and/or the current processing request meets the one or more pre-configured conditions, loading the target image into the target memory.

Join the waitlist — get patent alerts

Track US10679321B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.