I was wondering if this code could be better optimized for multithreading. What it does is open a process and loops through the data, there could be any range of files to open (so I would like to have say 2 or 3 processes at once):
I am new to using Visual Basic. Normally when designing other projects, CAD for PCBs, C source code, Mechanical parts etc, I maintain a sequence of design files with minor revision name changes such as r1, r2, r3 etc as I develop the design/debug process. This makes it easy to go back a step if the recent changes I've made prove to be a problem and need to be deleted. I am not sure how to do this using Microsoft Visual Basic 2008 Express Edition.
I have a list of strings that I need to pass to a process in a different class. What I want to know which of the two ideas would be a better approach to use in terms of speed,efficiency and parallel processing. The list contains +- 10000 strings and I want to limit the threads appropriately to have only about 5threads running at one time:
For i as integer = 0 to searchPages.Count - 1 Parallel.For(0,10,Sub(x) ps.processPage(searchPages.Item(i))
I have a situation where I'm using BackgroundWorker to run a long process in the background. However, whenever it runs I keep getting the following error:
"TargetInvocationException was unhandled"
The culprit seems to be this guy: Dim GrainProcess As New Process()
In my DoWork sub I'm calling a sub in another module. The above line is in the middle of that other sub. I'm using Process.Start to run a Matlab executable file (not written by me) that processes an image and spits out a number.
I tried putting the Dim statement outside the sub, but then it just gives me the same error a couple of lines down when I try to set the .StartInfo properties.
Does the "was unhandled" part of the above exception mean that I need to provide some kind of error checking (maybe a try...catch), or does it mean that I'm not allowed to do a Process.Start from within a BackgroundWorker thread?
I would like to prepare all nodes for my treeview in backgroundworker process. This seems to be fine, but adding those to my treeview1 on backgroundworker completed event seems to be wrong (I get exception there).
the code:
Code: Imports System.ComponentModel Public Class Form1 Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, ByVal e As DoWorkEventArgs) Handles BackgroundWorker1.DoWork
How can I limit the length of time an operation is allowed to take?
I have an external library that processes image files. I'm running it against thousands of images, and every now and then the library gets stuck on certain images. If I need to skip an image here or there, no problem, but I can't have the process get locked up, so I want to impose a maximum amount of time that the process is allowed to take for each image before I force it to give up and move on to the next image.
I'm making an app using wpf and vb.net in vb2010 express and having a problem. I have a timer that execute a backgroundworker every minute: Private Sub timer_Tick() Handles timer.Tick If Not bworker.IsBusy Then bworker.RunWorkerAsync() End If End Sub
The backgroundworker is working with xmlelement and xmldataprovider: Private Sub bworker_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles bworker.DoWork Dim source As XmlDataProvider = Application.Current.Resources("r1") Dim sometext As String = "something" Dim elemento As XmlElement = source.Document.CreateElement("elemento") elemento.InnerText = sometext e.Result = elemento End Sub
Then I'm using e.Result on RunWorkerComplete to add the XmlElement to source. It works perfect the first time I execute the backgroundworker, but when the timer calls it the second time it throws a InvalidOperationException in the line "elemento.InnerText = sometext" why is that and how can I solve it?
how i can use progress bar and updated with progress time. i mean for example if i make some process by click button ( copy file or search or) process that take alot of time, i want to see the progress bar change depend in the process. i know how to use it with a timer, this i don't wanted, because i don't know the time require for process event.
What is the best way to run a process say every 30 minutes? Or at 0900?
I have an app which does quite a few things, and want to add something that will run every 30 minutes. Don't want to use windows scheduler as i want to keep it all in the one app.
Is the only way to run a thread.sleep for 1800000? If so, can i run 2 background workers on the 1 app?
check how long a process has been running? I'm using the below code to check whether these programs are running.
Is there a way to see how long they've been running?
Private Sub tmrKillJoy_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tmrKillJoy.Tick Dim local As Process() = Process.GetProcesses
In my program I have two listbox and a button, it has the function of "check" that the two listbox have the same "count" items, but it takes some time before the action ends, the program then crashes until it ends, how can I use a progressbar using the processing time of the action button?
I have a data bound DataGridView. The final column of this is for the last change date to see how new the data is. I also have a hidden label on my form that has the current system time and date. I am wondering how do I take the date that is on the label and insert it into the column for the last change date on the datagridview when ever a new row is added. This way it automates the process of putting the exact time that row was added.
I have a form that I will be using to copy directories of photos from memory cards to locations on a computer. I would like to add a progress bar to the application to show the progress of the copying in real time. This is the code that I use to copy the directory in the first place Dim SourceDir As String = SourceTextBox.Text Dim DestinationDir As String = DestinationTextbox.Text If System.IO.Directory.Exists(DestinationDir) Then My.Computer.FileSystem.CopyDirectory(SourceDir, DestinationDir,) Else My.Computer.FileSystem.CreateDirectory(Destination Dir) My.Computer.FileSystem.CopyDirectory(SourceDir, DestinationDir)
It is my previous problem in vb6, its hard to multithread using vb6 so I migrate my codes to vb.Net.How can I multithread this two loops so that this process is running at the same time.Because when I start my second Loop, my first loop stop in executing. It will start again when my 2nd loop finished.
[code]...
I have 2 connected GSM Modem in usb port.That codes will send SMS in all contacts in my ListBox.
I have written a windows service that is meant to launch a notepad when a specific action happens. The problem i have is that even though the service launches notepad, the actual notepad it self is NOT visible. I know that it has been launced because i can see the process in the task manager. By the way the process is listed as a SYSTEM process rather than a process under my user name (i believe that is because my process is a "LocalSystem" one).
i'm in the need to start a backgroundworker inside another one.Now...The first one BGW starts a for cycle, and inside this one there is the second BGW that has to upload an image to a server.The trouble is that, the progress event and the complete event of the internal BGW are never called.
Most of my check boxes look like these (on the left of the picture) (ignore the checked check box in the upper left corner , I am not talking about tat one) :However , ONLY on tab 2 the check boxes look differently in both cases the check boxes are Disabled , but they don't look the same . Why is that ? I even tried copying the check boxes from tab 3 to tab 2 but to my surprise they once again looked differently ! This only happens on tab 2 . How is this possible ?
What is the difference in the two blocks of code below? I expected them to return the same result, but they don't.
In the case where xml.@Type = "null", I want PatientMetricTypeID (a nullable Integer) to end up being Nothing.
Block #1: If()
In this case, it ends up as 0. It looks like Nothing is being treated as an Integer and converted to 0. I can sort of see why this might happen but not fully... I would like to understand exactly how this works, and if there is a workaround.
Dim PatientMetricTypeID As Integer? = If(xml.@Type = "null", Nothing, CType([Enum].Parse(GetType(PatientMetricTypes), xml.@Type), Integer))
Block #2: If
In this case, it ends up as Nothing -- expected behavior.
1. This is probably really easy and I'm just missing it. I have 4 tabs in a controller. The contents in all four tabs will be identical (pictures, text boxes etc.) the end user would then add whatever to it. Whenever I try to copy the contents from tab 1 to any other tabs using ctrl+c and ctrl+v they get all out of alignment. Is there a way to duplicate a tab in the editor so that when flipping through the tabs all the text and pictures are in the exact same spot? I'm going out of mind on something that seams so simple.I don't want to have to write down the location of a couple of hundred controls and then retype them all 3 more times.
2. I can also only select text boxes, labels, and pictures at the same time. It will not let me select text boxes, labels, pictures and drawn lines all at the same time. So I can't really copy and paste everything at the same time I have to do it twice which makes the alignment get even more screwed up.
is there any listindex property is available like vb6 in vs.net ? .because i want in the combo box .when it loads at least very first item needs to be selected .so let me know any way to do it
I've just about scrambled my brain on this, searching and trying things, so I'm hoping someone sees something that I'm missing or can explain it to me. I'm new to .NET, used to do a lot of programming in VB but that was many years ago.