René's URL Explorer Experiment


Title: Transfer the ownership of method's thunk to caller(split from #958) by amos402 · Pull Request #1003 · pythonnet/pythonnet · GitHub

Open Graph Title: Transfer the ownership of method's thunk to caller(split from #958) by amos402 · Pull Request #1003 · pythonnet/pythonnet

X Title: Transfer the ownership of method's thunk to caller(split from #958) by amos402 · Pull Request #1003 · pythonnet/pythonnet

Description: What does this implement/fix? Explain your changes. Let the caller handle the lifecycle for achieving the memory release when shutdown pythonnet regardless of normal shutdown or soft shutdown in #958. Does this close any currently open issues? ... Any other comments? ... Checklist Check all those that are applicable and complete. Make sure to include one or more tests for your change If an enhancement PR, please create docs and at best an example Add yourself to AUTHORS Updated the CHANGELOG

Open Graph Description: What does this implement/fix? Explain your changes. Let the caller handle the lifecycle for achieving the memory release when shutdown pythonnet regardless of normal shutdown or soft shutdown in #9...

X Description: What does this implement/fix? Explain your changes. Let the caller handle the lifecycle for achieving the memory release when shutdown pythonnet regardless of normal shutdown or soft shutdown in #9...

Opengraph URL: https://github.com/pythonnet/pythonnet/pull/1003

X: @github

direct link

Domain: github.com

route-pattern/:user_id/:repository/pull/:id/files(.:format)
route-controllerpull_requests
route-actionfiles
fetch-noncev2:a406c4ee-9aa1-f9a7-cbc6-ba739b988b0b
current-catalog-service-hashae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b
request-idAB26:3E5B37:1F2261A:2B9E88D:6970E854
html-safe-noncef9420d729455be7699a8629a2ba92f759bf064ebae24b1350f171ca9246a59fa
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBQjI2OjNFNUIzNzoxRjIyNjFBOjJCOUU4OEQ6Njk3MEU4NTQiLCJ2aXNpdG9yX2lkIjoiMzg0NTMwMDU3MjgxODMwMzA2MCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac5ae7ed4ef0bfb088ce65e3a1ba256e9b44fba08835a1d0b706436535769bc8d5
hovercard-subject-tagpull_request:347207671
github-keyboard-shortcutsrepository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///pull_requests/show/files
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/pythonnet/pythonnet/pull/1003/files
twitter:imagehttps://avatars.githubusercontent.com/u/3406561?s=400&v=4
twitter:cardsummary_large_image
og:imagehttps://avatars.githubusercontent.com/u/3406561?s=400&v=4
og:image:altWhat does this implement/fix? Explain your changes. Let the caller handle the lifecycle for achieving the memory release when shutdown pythonnet regardless of normal shutdown or soft shutdown in #9...
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Nonea8b3a33ad16bd33428ccc7800d4ea7bfc6b4990584847afdcb92b020b61a949b
turbo-cache-controlno-preview
diff-viewunified
go-importgithub.com/pythonnet/pythonnet git https://github.com/pythonnet/pythonnet.git
octolytics-dimension-user_id6050430
octolytics-dimension-user_loginpythonnet
octolytics-dimension-repository_id14748123
octolytics-dimension-repository_nwopythonnet/pythonnet
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id14748123
octolytics-dimension-repository_network_root_nwopythonnet/pythonnet
turbo-body-classeslogged-out env-production page-responsive full-width
disable-turbotrue
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releaseb8a8c883a585a3dc6cb57fa8b7997b70c86a696c
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://github.com/pythonnet/pythonnet/pull/1003/files#start-of-content
https://github.com/
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpythonnet%2Fpythonnet%2Fpull%2F1003%2Ffiles
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpythonnet%2Fpythonnet%2Fpull%2F1003%2Ffiles
Sign up https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fpull_requests%2Fshow%2Ffiles&source=header-repo&source_repo=pythonnet%2Fpythonnet
Reloadhttps://github.com/pythonnet/pythonnet/pull/1003/files
Reloadhttps://github.com/pythonnet/pythonnet/pull/1003/files
Reloadhttps://github.com/pythonnet/pythonnet/pull/1003/files
pythonnet https://github.com/pythonnet
pythonnethttps://github.com/pythonnet/pythonnet
Notifications https://github.com/login?return_to=%2Fpythonnet%2Fpythonnet
Fork 770 https://github.com/login?return_to=%2Fpythonnet%2Fpythonnet
Star 5.4k https://github.com/login?return_to=%2Fpythonnet%2Fpythonnet
Code https://github.com/pythonnet/pythonnet
Issues 155 https://github.com/pythonnet/pythonnet/issues
Pull requests 18 https://github.com/pythonnet/pythonnet/pulls
Discussions https://github.com/pythonnet/pythonnet/discussions
Actions https://github.com/pythonnet/pythonnet/actions
Projects 0 https://github.com/pythonnet/pythonnet/projects
Wiki https://github.com/pythonnet/pythonnet/wiki
Security Uh oh! There was an error while loading. Please reload this page. https://github.com/pythonnet/pythonnet/security
Please reload this pagehttps://github.com/pythonnet/pythonnet/pull/1003/files
Insights https://github.com/pythonnet/pythonnet/pulse
Code https://github.com/pythonnet/pythonnet
Issues https://github.com/pythonnet/pythonnet/issues
Pull requests https://github.com/pythonnet/pythonnet/pulls
Discussions https://github.com/pythonnet/pythonnet/discussions
Actions https://github.com/pythonnet/pythonnet/actions
Projects https://github.com/pythonnet/pythonnet/projects
Wiki https://github.com/pythonnet/pythonnet/wiki
Security https://github.com/pythonnet/pythonnet/security
Insights https://github.com/pythonnet/pythonnet/pulse
Sign up for GitHub https://github.com/signup?return_to=%2Fpythonnet%2Fpythonnet%2Fissues%2Fnew%2Fchoose
terms of servicehttps://docs.github.com/terms
privacy statementhttps://docs.github.com/privacy
Sign inhttps://github.com/login?return_to=%2Fpythonnet%2Fpythonnet%2Fissues%2Fnew%2Fchoose
filmorhttps://github.com/filmor
pythonnet:masterhttps://github.com/pythonnet/pythonnet/tree/master
amos402:release-thunkhttps://github.com/amos402/pythonnet/tree/release-thunk
Conversation 5 https://github.com/pythonnet/pythonnet/pull/1003
Commits 8 https://github.com/pythonnet/pythonnet/pull/1003/commits
Checks 0 https://github.com/pythonnet/pythonnet/pull/1003/checks
Files changed https://github.com/pythonnet/pythonnet/pull/1003/files
Please reload this pagehttps://github.com/pythonnet/pythonnet/pull/1003/files
Transfer the ownership of method's thunk to caller(split from #958) https://github.com/pythonnet/pythonnet/pull/1003/files#top
Show all changes 8 commits https://github.com/pythonnet/pythonnet/pull/1003/files
7f530f2 Add exception helper amos402 Nov 27, 2019 https://github.com/pythonnet/pythonnet/pull/1003/commits/7f530f2a7d7ce7a492042d752a9fab27b84478bb
90e44bd Make the caller of `Interop.GetThunk` handle thunk's lifecycle(unfini… amos402 Nov 30, 2019 https://github.com/pythonnet/pythonnet/pull/1003/commits/90e44bd9c3c0f04fee2f5226145887dc57a0a174
3cc717f Merge branch 'master' into release-thunk filmor Dec 2, 2019 https://github.com/pythonnet/pythonnet/pull/1003/commits/3cc717fa8db0447ccf546f073ba707c1cc462a0c
7c97668 Merge branch 'master' into release-thunk lostmsu Dec 3, 2019 https://github.com/pythonnet/pythonnet/pull/1003/commits/7c97668ce492ed80d383f1877cf69b6ad7495648
b532b6c Merge branch 'master' into release-thunk filmor Dec 16, 2019 https://github.com/pythonnet/pythonnet/pull/1003/commits/b532b6c6666b27e76a77994d0c721e3f4fe88d19
169b1c2 Resolve merge conflict amos402 Dec 17, 2019 https://github.com/pythonnet/pythonnet/pull/1003/commits/169b1c2bc6cae0e4e61602e40e6042c9b1b63bd5
a2e43ec Use Marshal.GetFunctionPointerForDelegate instead of Marshal + Thunk amos402 Dec 17, 2019 https://github.com/pythonnet/pythonnet/pull/1003/commits/a2e43ec419228ce51c852288aa76251cc4d4c71a
3d2d2b6 Merge branch 'master' into release-thunk amos402 Dec 18, 2019 https://github.com/pythonnet/pythonnet/pull/1003/commits/3d2d2b65791fb60200ea2d28916a08a1fb470cbc
Clear filters https://github.com/pythonnet/pythonnet/pull/1003/files
Please reload this pagehttps://github.com/pythonnet/pythonnet/pull/1003/files
Please reload this pagehttps://github.com/pythonnet/pythonnet/pull/1003/files
interop.cs https://github.com/pythonnet/pythonnet/pull/1003/files#diff-7eb886c1d364dfa7cc2cb64d82ab08f50a157e87c830cb375fd0214ef0ebe3e9
methodwrapper.cs https://github.com/pythonnet/pythonnet/pull/1003/files#diff-99ef8c19768c19b7578b601a3c2e282781207b1a35e08ce968f2de2ac586d948
typemanager.cs https://github.com/pythonnet/pythonnet/pull/1003/files#diff-64b3221887c395ea436fe9433800e73c0854e42d78cd7108c320e5d41d20ab64
src/runtime/interop.cshttps://github.com/pythonnet/pythonnet/pull/1003/files#diff-7eb886c1d364dfa7cc2cb64d82ab08f50a157e87c830cb375fd0214ef0ebe3e9
View file https://github.com/amos402/pythonnet/blob/3d2d2b65791fb60200ea2d28916a08a1fb470cbc/src/runtime/interop.cs
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/pythonnet/pythonnet/pull/1003/{{ revealButtonHref }}
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-7eb886c1d364dfa7cc2cb64d82ab08f50a157e87c830cb375fd0214ef0ebe3e9
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-7eb886c1d364dfa7cc2cb64d82ab08f50a157e87c830cb375fd0214ef0ebe3e9
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-7eb886c1d364dfa7cc2cb64d82ab08f50a157e87c830cb375fd0214ef0ebe3e9
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-7eb886c1d364dfa7cc2cb64d82ab08f50a157e87c830cb375fd0214ef0ebe3e9
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-7eb886c1d364dfa7cc2cb64d82ab08f50a157e87c830cb375fd0214ef0ebe3e9
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-7eb886c1d364dfa7cc2cb64d82ab08f50a157e87c830cb375fd0214ef0ebe3e9
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-7eb886c1d364dfa7cc2cb64d82ab08f50a157e87c830cb375fd0214ef0ebe3e9
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-7eb886c1d364dfa7cc2cb64d82ab08f50a157e87c830cb375fd0214ef0ebe3e9
src/runtime/methodwrapper.cshttps://github.com/pythonnet/pythonnet/pull/1003/files#diff-99ef8c19768c19b7578b601a3c2e282781207b1a35e08ce968f2de2ac586d948
View file https://github.com/amos402/pythonnet/blob/3d2d2b65791fb60200ea2d28916a08a1fb470cbc/src/runtime/methodwrapper.cs
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/pythonnet/pythonnet/pull/1003/{{ revealButtonHref }}
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-99ef8c19768c19b7578b601a3c2e282781207b1a35e08ce968f2de2ac586d948
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-99ef8c19768c19b7578b601a3c2e282781207b1a35e08ce968f2de2ac586d948
src/runtime/typemanager.cshttps://github.com/pythonnet/pythonnet/pull/1003/files#diff-64b3221887c395ea436fe9433800e73c0854e42d78cd7108c320e5d41d20ab64
View file https://github.com/amos402/pythonnet/blob/3d2d2b65791fb60200ea2d28916a08a1fb470cbc/src/runtime/typemanager.cs
Open in desktop https://desktop.github.com
https://github.co/hiddenchars
https://github.com/pythonnet/pythonnet/pull/1003/{{ revealButtonHref }}
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-64b3221887c395ea436fe9433800e73c0854e42d78cd7108c320e5d41d20ab64
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-64b3221887c395ea436fe9433800e73c0854e42d78cd7108c320e5d41d20ab64
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-64b3221887c395ea436fe9433800e73c0854e42d78cd7108c320e5d41d20ab64
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-64b3221887c395ea436fe9433800e73c0854e42d78cd7108c320e5d41d20ab64
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-64b3221887c395ea436fe9433800e73c0854e42d78cd7108c320e5d41d20ab64
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-64b3221887c395ea436fe9433800e73c0854e42d78cd7108c320e5d41d20ab64
https://github.com/pythonnet/pythonnet/pull/1003/files#diff-64b3221887c395ea436fe9433800e73c0854e42d78cd7108c320e5d41d20ab64
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.