NSTimer.CreateScheduledTimer vs CreateTimer - what's the difference? - xamarin.ios

MonoTouch documentation at http://docs.go-mono.com/index.aspx?link=T%3AMonoTouch.Foundation.NSTimer doesn't say.

According to the MT Rosetta Stone
CreateScheduledTimer ==> scheduledTimerWithTimeInterval
CreateTimer ==> timerWithTimeInterval
Apple's NSTimer docs say the difference between the two is that the ScheduledTimer variant is "scheduled on the current run loop in the default mode."

Related

NSProgressIndicator built-in animation raises CA_ASSERT_MAIN_THREAD_TRANSACTIONS

This looks like a bug in either NSProgressIndicator or Xcode 9 to me:
Run Xcode 9 Beta 1 or Beta 4, in macOS 10.12.6.
File > New Project, macOS, Cocoa app, Objective-C or Swift, ARC or not, no storyboards, latest (10.13) SDK.
In the app target's environment, set CA_ASSERT_MAIN_THREAD_TRANSACTIONS=1.
In app delegate, add a IBOutlet progressIndicator.
In the nib, add a NSProgressIndicator to the window, connect to that outlet. Leave the checkbox Indeterminate switched on.
In -applicationDidFinishLaunching, call -startAnimation: on progressIndicator.
Build and run.
Expected Result:
Progress indicator should happily show indeterminate progress, because I did everything on the main thread.
Actual Result:
App crashes, citing CA_ASSERT_MAIN_THREAD_TRANSACTIONS, when
-startAnimation: is called.
You can see this in a tiny demo project.
Did I do anything wrong? Is my Expected Result incorrect?
P.S. I asked this on Apple's Developer Forums, but still awaiting moderator approval after 2 working days, so I deleted it and came here instead :(
Update: Still lacking an explanation, I filed Apple Bug 33593575.
This was a bug in NSProgressIndicator. Your bug report (thank you for filing!) was marked as a duplicate of an earlier bug, which was already resolved in macOS 10.13.

Installshield 2015 Premier Edition : condition Custom Action to run at end of minor upgrade installation

In my Installscript MSI project, I'm trying to program a Custom Action to run when a minor upgrade Update.exe has finished installing (After InstallFinalize):
I assume the Custom Action is always included in the Patch defintion that I create afterward in Media -> Patch Design.
What do I do wrong please?
Thanks in advance,
I found the answer on this Stackoverflow question (custom action must be set as Deferred Execution , Absent from Sequence of Install UI Sequence , After InstallFiles of Install Exec Sequence with condition PATCH.
https://stackoverflow.com/questions/8167663/installshield-with-custom-action

GTK+ Vte.Terminal().fork_command_full removed?

I noticed this last week. All my code on ubuntu 15.04 was working fine using
Vte.Terminal().fork_command_full
Also this documentation site was showing this function as well, but does not now. Has this function been removed? If so, then what is the next simplest alternative to get a virtual terminal widget working.
As this answer suggests the use of the above command, what is the next best way to get this widget up and running?
NOTE: I am using python3 for this code
Update: This answer is now deprecated. Please see the answer by #Maximus instead.
The function call for the C API has been renamed from
vte_terminal_fork_command_full ()
to
vte_terminal_spawn_sync ()
since VTE 0.38.
As a result, the corresponding Python function has been renamed from fork_command_full() to spawn_sync().
The function has been renamed from
vte_terminal_spawn_sync()
to
vte_terminal_spawn_async()
Since version VTE 0.48

Node.js profiling with Dtrace not showing functions names

I'm trying to profile CPU utilization for my project using DTrace. I just followed the script
The problem is that it doesn't show the functions names. The stacks.out file looks like that:
CPU ID FUNCTION:NAME
0 73700 :tick-60s
node`_ZN2v86Object3GetENS_6HandleINS_5ValueEEE+0x1
node`_ZN4node7TCPWrap12OnConnectionEP11uv_stream_si+0x14b
node`uv__server_io+0xbf
node`uv__io_poll+0x259
node`uv_run+0xda
node`_ZN4node5StartEiPPc+0x16d
node`main+0x1b
node`_start+0x83
1
node`_ZN4node6Buffer4FillERKN2v89ArgumentsE+0x22b
0x82474d1b
0x8241ee9c
0x8241e624
0x8241e30f
0x82426abd
0x82419e4e
0x82419948
0x82413fc3
0x8d20e501
0x82416f65
0x82413f98
0x8243e7d3
0x824186c0
0x8246e8cf
0x8d221899
0x8d21308a
node`_ZN2v88internalL6InvokeEbNS0_6HandleINS0_10JSFunctionEEENS1_INS0_6ObjectEEEiPS5_Pb+0x101
node`_ZN2v88internal9Execution4CallENS0_6HandleINS0_6ObjectEEES4_iPS4_Pbb+0xc9
node`_ZN2v88Function4CallENS_6HandleINS_6ObjectEEEiPNS1_INS_5ValueEEE+0x10b
node`_ZN4node12MakeCallbackEN2v86HandleINS0_6ObjectEEENS1_INS0_8FunctionEEEiPNS1_INS0_5ValueEEE+0x4c
node`_ZN4node12MakeCallbackEN2v86HandleINS0_6ObjectEEENS1_INS0_6StringEEEiPNS1_INS0_5ValueEEE+0x66
node`_ZN4node10StreamWrap12OnReadCommonEP11uv_stream_si8uv_buf_t14uv_handle_type+0x14f
node`_ZN4node10StreamWrap6OnReadEP11uv_stream_si8uv_buf_t+0x2e
node`uv__read+0x281
node`uv__stream_io+0x131
node`uv__io_poll+0x259
node`uv_run+0xda
node`_ZN4node5StartEiPPc+0x16d
node`main+0x1b
node`_start+0x83
1
The flame graph shows hex (ie. "0x82474d1b") as functions calls and not the actual function name.
I'm using OmniOS (illumos based OS) vagrant box r151002 and did this (https://gist.github.com/dalssoft/5595688) to build node.js 32bits on OmniOS.
Any thoughts?
I had similar issues when writing my blog post about using openindiana and node.js together.
http://blog.nearform.com/blog/node-openindiana.html
I found being explicit with the cpu arch was the way to resolve it.
./configure --with-dtrace --dest-cpu=x64
Don't forget to demangle the c++ symbols too
c++filt < stacks.out > demangled.out

What is the current state of tail-call-optimization for F# on Mono (2.11)?

What is the current state of Tail Call Optimization (TCO) implementation on Mono (2.11) ? Read somewhere that all the codebase would need to be modified to use a callee-pops-arguments convention. What is the status of this change ? Is the ARM/Linux port up to date on this matter ?
Thanks!
Tail calls definitely work on mono on linux - tested using
let rec f a = f (a+1)
which didn't crash - tested on Mono 2.10.2
UPDATE
Tested with link from Brian - https://bugzilla.novell.com/show_bug.cgi?id=476785
which crashes on Mono 2.10.2 despite generating .tail instructions

Resources