Post

Replies

Boosts

Views

Activity

Reply to How to Create a Searchable Help Book with Help Indexer?
I got it - putting a file named "PkgInfo" with the text "BNDLhbwr" in my appname.help/Contents folder turns the .help folder into a package. This is interesting but it doesn't fix the no help book bug. The help Book will only be displayed if the app bundle is in the Applications folder. Also as far as I can tell this is an undocumented "feature" of macOS Monterey 12.0.1.
Topic: App & System Services SubTopic: Core OS Tags:
Dec ’21
Reply to Application performance declined in Big Sur and is worse in Monterey
The way you are doing this is VERY complicated and probably in-efficient. Apple recommends that developers migrate away from threads to Grand Central Dispatch. This provides a very robust, efficient system to manage multi-threading. I does the work for you by optimizing the use of the cores in your machine without you having to do things like trying to figure out how many cores are available, in fact they advise you not to do this: https://developer.apple.com/library/archive/documentation/General/Conceptual/ConcurrencyProgrammingGuide/ConcurrencyandApplicationDesign/ConcurrencyandApplicationDesign.html OpenMP probably isn't up to date and or doesn't take advantage of this technology very well. GCD has the advantage of being available on any processor or OS version. You should be able to run each of these processes in its own serial or more likely concurrent dispatch queue and let GCD execute them efficiently. Running each of these with its own copy of the app is probably much slower than it would be to launch each process with GCD due to overhead like context switching. You could write one source code file to launch these and be notified when they are done and it would be much easier for you than doing this with the terminal. You should at least read the Concurrency Programming Guide and see if it would make your life easier and speed up your app.
Topic: App & System Services SubTopic: Core OS Tags:
Nov ’21
Reply to How to Create a Searchable Help Book with Help Indexer?
There is nothing wrong with my help book. When I have problems like this one I tend to think it's my fault and re-read the documentation. My Help Book is configured correctly. The problem is that XCode 13, or more likely macOS Monterey 12.0.1 will only display the Help Book if the application bundle is in the Applications folder. So problem solved, sort of, you can't display the Help Book while debugging your Mac App in XCode. You have to archive it and export it to the Applications folder to see the Help Book. I can't update my application at the App Store anyway because of the infamous exit(173) bug in macOS Monterey. Also the hiutil (Help Indexer app) does nothing in Monterey anyway so don't bother creating a help Index.
Topic: App & System Services SubTopic: Core OS Tags:
Nov ’21
Reply to How to Create a Searchable Help Book with Help Indexer?
I got it - putting a file named "PkgInfo" with the text "BNDLhbwr" in my appname.help/Contents folder turns the .help folder into a package. This is interesting but it doesn't fix the no help book bug. The help Book will only be displayed if the app bundle is in the Applications folder. Also as far as I can tell this is an undocumented "feature" of macOS Monterey 12.0.1.
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
Dec ’21
Reply to Application performance declined in Big Sur and is worse in Monterey
The way you are doing this is VERY complicated and probably in-efficient. Apple recommends that developers migrate away from threads to Grand Central Dispatch. This provides a very robust, efficient system to manage multi-threading. I does the work for you by optimizing the use of the cores in your machine without you having to do things like trying to figure out how many cores are available, in fact they advise you not to do this: https://developer.apple.com/library/archive/documentation/General/Conceptual/ConcurrencyProgrammingGuide/ConcurrencyandApplicationDesign/ConcurrencyandApplicationDesign.html OpenMP probably isn't up to date and or doesn't take advantage of this technology very well. GCD has the advantage of being available on any processor or OS version. You should be able to run each of these processes in its own serial or more likely concurrent dispatch queue and let GCD execute them efficiently. Running each of these with its own copy of the app is probably much slower than it would be to launch each process with GCD due to overhead like context switching. You could write one source code file to launch these and be notified when they are done and it would be much easier for you than doing this with the terminal. You should at least read the Concurrency Programming Guide and see if it would make your life easier and speed up your app.
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
Nov ’21
Reply to How to Create a Searchable Help Book with Help Indexer?
There is nothing wrong with my help book. When I have problems like this one I tend to think it's my fault and re-read the documentation. My Help Book is configured correctly. The problem is that XCode 13, or more likely macOS Monterey 12.0.1 will only display the Help Book if the application bundle is in the Applications folder. So problem solved, sort of, you can't display the Help Book while debugging your Mac App in XCode. You have to archive it and export it to the Applications folder to see the Help Book. I can't update my application at the App Store anyway because of the infamous exit(173) bug in macOS Monterey. Also the hiutil (Help Indexer app) does nothing in Monterey anyway so don't bother creating a help Index.
Topic: App & System Services SubTopic: Core OS Tags:
Replies
Boosts
Views
Activity
Nov ’21