Click here to Skip to main content
15,887,596 members
Home / Discussions / Managed C++/CLI
   

Managed C++/CLI

 
GeneralRe: trying to understand DLL and Thread local storage Pin
ForNow5-Dec-22 7:33
ForNow5-Dec-22 7:33 
GeneralRe: trying to understand DLL and Thread local storage Pin
Richard MacCutchan5-Dec-22 7:54
mveRichard MacCutchan5-Dec-22 7:54 
GeneralRe: trying to understand DLL and Thread local storage Pin
ForNow5-Dec-22 8:00
ForNow5-Dec-22 8:00 
AnswerRe: trying to understand DLL and Thread local storage Pin
jschell5-Dec-22 6:06
jschell5-Dec-22 6:06 
GeneralRe: trying to understand DLL and Thread local storage Pin
ForNow5-Dec-22 7:37
ForNow5-Dec-22 7:37 
GeneralRe: trying to understand DLL and Thread local storage Pin
jschell12-Dec-22 10:21
jschell12-Dec-22 10:21 
NewsGood news, /clr builds will soon add C++ 20 support! Pin
John Schroedl15-Nov-22 5:49
professionalJohn Schroedl15-Nov-22 5:49 
Questionrekursif Pin
Achmad Roihan28-Oct-22 2:31
Achmad Roihan28-Oct-22 2:31 
AnswerRe: rekursif Pin
OriginalGriff28-Oct-22 2:38
mveOriginalGriff28-Oct-22 2:38 
Questionrekursif program (Recursive Program) Pin
Achmad Roihan26-Oct-22 19:51
Achmad Roihan26-Oct-22 19:51 
AnswerRe: rekursif program (Recursive Program) Pin
OriginalGriff26-Oct-22 20:02
mveOriginalGriff26-Oct-22 20:02 
QuestionHow to close & clear the oledbconnection on form2()_load? Pin
Paramu19739-Oct-22 14:10
Paramu19739-Oct-22 14:10 
AnswerRe: How to close & clear the oledbconnection on form2()_load? Pin
Gerry Schmitz9-Oct-22 19:32
mveGerry Schmitz9-Oct-22 19:32 
QuestionHow does the compiler achieve the CRT remapping? Pin
John Schroedl22-Aug-22 10:50
professionalJohn Schroedl22-Aug-22 10:50 
Question[Solved] I hope there is a Managed C++/CLR person left to help me with Parallel::For Pin
madusmacus27-Jul-22 4:25
madusmacus27-Jul-22 4:25 
AnswerRe: I hope there is a Managed C++/CLR person left to help me with Parallel::For Pin
Richard Deeming27-Jul-22 22:13
mveRichard Deeming27-Jul-22 22:13 
General[Final Code Here] Re: I hope there is a Managed C++/CLR person left to help me with Parallel::For Pin
madusmacus27-Jul-22 22:35
madusmacus27-Jul-22 22:35 
Thank you very much Richard
If MS docs had C++ version of this i would have not neded to bother you
I was very confused as i dont do delegates if i can avoid it

Very happy some C++/CLR people still exist

ill mark as solved

Here is the Final working MainForm() showing cross thread update of textBox, Random, and usage of other Member funtions
This is here to help anyone that is as bad at this overcomplicated Parallel coding in C++/CLR (my opinion should be easier)

"Parallel::For" - intellisense still moans about 2 or more overloads of it but who cares anyway, no one :¬)

namespace CppTutorial {

	using namespace System;
    using namespace System::Threading::Tasks;
	using namespace System::Windows::Forms;

	/// <summary>
	/// Summary for MainForm
	/// </summary>
	public ref class MainForm : public System::Windows::Forms::Form
	{
	public:
		MainForm(void)
		{
			InitializeComponent();
			//
			//TODO: Add the constructor code here
			//
		}

	protected:
		/// <summary>
		/// Clean up any resources being used.
		/// </summary>
		~MainForm()
		{
			if (components)
			{
				delete components;
			}
		}

	private: System::Windows::Forms::TextBox ^textBox1;

	protected:

	private:
		/// <summary>
		/// Required designer variable.
		/// </summary>
		System::ComponentModel::Container ^components;

#pragma region Windows Form Designer generated code
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		void InitializeComponent(void)
		{
			this->textBox1=(gcnew System::Windows::Forms::TextBox());
			this->SuspendLayout();
			// 
			// textBox1
			// 
			this->textBox1->Dock=System::Windows::Forms::DockStyle::Fill;
			this->textBox1->Location=System::Drawing::Point(0,0);
			this->textBox1->Multiline=true;
			this->textBox1->Name=L"textBox1";
			this->textBox1->Size=System::Drawing::Size(563,451);
			this->textBox1->TabIndex=0;
			// 
			// MainForm
			// 
			this->AutoScaleDimensions=System::Drawing::SizeF(6,13);
			this->AutoScaleMode=System::Windows::Forms::AutoScaleMode::Font;
			this->ClientSize=System::Drawing::Size(563,451);
			this->Controls->Add(this->textBox1);
			this->Name=L"MainForm";
			this->Text=L"MainForm";
			this->Shown+=gcnew System::EventHandler(this,&MainForm::MainForm_Shown);
			this->ResumeLayout(false);
			this->PerformLayout();

		}
#pragma endregion

  public:

  static MainForm ^staticmain;
  Random ^rand1;
	
  static void Body(int index)
  {
	// Randomly slow down thread
	int r=staticmain->rand1->Next(1000000);
	for(int i=0;i<r;i++){}
	// Append index and rnd text
	staticmain->textBox1->AppendText("i: "+Convert::ToString(index)+"  -   r: "+Convert::ToString(r)+"\r\n");
	// Call another MainForm member from inside Body
	staticmain->AnotherMethod();
  }

  System::Void MainForm_Shown(System::Object^ sender,System::EventArgs^ e) 
  {
	// Save main as static for use in Body()
	staticmain=this;
	// Allocate Random object for use in Body()
    rand1=gcnew Random();
	// Stop cross thrad exeptions
	textBox1->CheckForIllegalCrossThreadCalls=false;
    System::Action <int> ^body = gcnew System::Action <int> (MainForm::Body);
    ParallelLoopResult ^result = Parallel::For(0, 20, body);
  }

	void AnotherMethod()
	{
		int test=1;
	}

  };
}


modified 29-Jul-22 3:41am.

Questionc++ forms 2022 code Pin
Member 884846417-Jun-22 1:37
Member 884846417-Jun-22 1:37 
AnswerRe: c++ forms 2022 code Pin
Richard MacCutchan17-Jun-22 3:56
mveRichard MacCutchan17-Jun-22 3:56 
QuestionI want to write a C++/CLI wrapper class library which can be utilized in both C++ and C# applications. Pin
Member 121624009-Jun-22 21:45
Member 121624009-Jun-22 21:45 
Questionsimplifying code Pin
hshan_15-Mar-22 6:30
hshan_15-Mar-22 6:30 
AnswerRe: simplifying code Pin
Victor Nijegorodov15-Mar-22 9:22
Victor Nijegorodov15-Mar-22 9:22 
GeneralRe: simplifying code Pin
Ghazi Warrior22-Mar-22 19:46
Ghazi Warrior22-Mar-22 19:46 
GeneralRe: simplifying code Pin
hshan_19-Apr-22 3:35
hshan_19-Apr-22 3:35 
AnswerRe: simplifying code Pin
Craig Robbins15-Mar-22 9:25
Craig Robbins15-Mar-22 9:25 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.