日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

首个任务一点感受

發(fā)布時(shí)間:2025/7/25 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 首个任务一点感受 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

初入職場(chǎng),這兩個(gè)星期來(lái),在Boss的指點(diǎn)下,前前后后修改了多次,終于將這個(gè)ServerCheck的小工具掛在服務(wù)器上檢測(cè)了.他要求做出一個(gè)ServerCheck,檢查指定的服務(wù)器能否正常訪(fǎng)問(wèn)下載,每隔一段時(shí)間就循環(huán)地檢查一次,一旦不能訪(fǎng)問(wèn),便通過(guò)Email通知Mail List中的各個(gè)郵箱,如果恢復(fù)正常便再發(fā)送"正確報(bào)告".整個(gè)業(yè)務(wù)邏輯并不復(fù)雜,但對(duì)于我這個(gè)初出茅廬的人來(lái)說(shuō),著實(shí)煎熬了一把.熬完了,總會(huì)留下點(diǎn)什么的.
1.命名規(guī)范再次強(qiáng)調(diào),這個(gè)沒(méi)得說(shuō),必須的!
2.編程的思維需要轉(zhuǎn)變,不能按照計(jì)算機(jī)過(guò)程式的方式,需求什么就去做什么;面向?qū)ο蟛荒苤皇潜砻嫔险f(shuō)說(shuō)的,需要運(yùn)用起來(lái)
3.要花大部分的時(shí)間去thinking,當(dāng)腦海里勾勒出處理的藍(lán)本時(shí),真正做起來(lái)很easy.好多時(shí)候我們思考的出發(fā)點(diǎn)就不正確或是不實(shí)際(Boss說(shuō)"新手常犯的,考慮欠佳"),結(jié)果時(shí)間浪費(fèi)在"補(bǔ)牢"上,卻得不到一個(gè)預(yù)期的效果,更有甚者會(huì)南轅北轍.
4.技術(shù)上欠缺是個(gè)軟肋,"冰凍三尺非一日之寒",不斷地敲,不斷地啃,是一個(gè)過(guò)程
隨筆附上這個(gè)工具的部分源碼,留個(gè)記錄:

?向指定的服務(wù)器進(jìn)行輪詢(xún)?cè)L問(wèn):

try
{
//對(duì)網(wǎng)絡(luò)訪(fǎng)問(wèn)設(shè)置一個(gè)超時(shí)器
exitFlag = false;
timeOut.Elapsed
+= new ElapsedEventHandler(TimeOut_Tick);
timeOut.Interval
= 5000;
timeOut.Enabled
= true;
timeOut.Start();

//創(chuàng)建一個(gè)HttpWebRequest對(duì)象,不需要實(shí)例化,用HttpWebRequest.Create來(lái)創(chuàng)建
HttpWebRequest webRequest = (HttpWebRequest)HttpWebRequest.Create(dirPath);

//根據(jù)創(chuàng)建的HttpWebRequest來(lái)創(chuàng)建HttpWebResponse對(duì)象
HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();

//取得返回的Stream
Stream stream = webResponse.GetResponseStream();

//把Stream轉(zhuǎn)換為StreamReader
StreamReader streamReader = new System.IO.StreamReader(stream);

string str1 = null;
int count = 0;
int length = "Palmap Server Availability Test".Length;
while ((exitFlag == false) && (count < length)) //如果時(shí)間到或字符流讀完返回false
{
//StreamReader轉(zhuǎn)換為字符串
if (streamReader.Peek() >= 0)
{
char chrRead = (char)streamReader.Read();
str1
+= chrRead.ToString();
count
++;
}
Application.DoEvents();
}

timeOut.Stop();
streamReader.Close();
stream.Close();

webResponse.Close();
webRequest.Abort();

//查看一下返回結(jié)果
if (str1 == "Palmap Server Availability Test")
{
return true;
}
return false;
}
catch
{
timeOut.Stop();
return false;
}

?發(fā)送郵件的部分使用到了System.Net.Mail類(lèi)庫(kù),由于要求不是很高,就沒(méi)有考慮其性能了.還望園中高手前輩們予以指點(diǎn)迷津!

/// <summary>
/// 發(fā)送郵件
/// </summary>
/// <param name="title">郵件標(biāo)題</param>
/// <param name="content">郵件正文內(nèi)容</param>
/// <returns></returns>
public void SendMail(string title, string content)
{
SmtpClient client
= new SmtpClient();
client.DeliveryMethod
= SmtpDeliveryMethod.Network;//指定電子郵件發(fā)送方式
client.Host = strHost;//指定SMTP服務(wù)器
client.Credentials = new System.Net.NetworkCredential(strAccount, strPwd);
client.EnableSsl
= true;

for (int i = 0; i < mailList.Length; i++)
{
MailMessage msg
= new MailMessage(strFrom, mailList[i]);
msg.Subject
= title;
msg.Body
= content;
msg.BodyEncoding
= System.Text.Encoding.UTF8;//正文編碼
msg.IsBodyHtml = false;
msg.Priority
= MailPriority.High;
client.Send(msg);
msg.Dispose();
}
}

轉(zhuǎn)載于:https://www.cnblogs.com/facing/archive/2011/03/23/1992625.html

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專(zhuān)家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的首个任务一点感受的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。